区块链技术博客
www.b2bchain.cn

swift字节流操作-拼包、拆包求职学习资料

本文介绍了swift字节流操作-拼包、拆包求职学习资料,有助于帮助完成毕业设计以及求职,是一篇很好的资料。

对技术面试,学习经验等有一些体会,在此分享。

字节流NSData(OC)、Data(Swift);

1、不同类型数据拼接字节流(拼包)UInt8、UInt16、UInt32组成的数据流拼接;

var ar: [UInt8] = Array.init(repeating: 0, count: 4)
ar[0] = 15
ar[1] = 13
let aa_ar = Data(bytes: ar, count: ar.count)
var br: [UInt16] = Array.init(repeating: 0, count: 4)
br[0] = 2
br[1] = 1
br[2] = 21474
br[3] = 235
let ba_ar = Data(bytes: br, count: br.count * 2)
var cr: [UInt32] = Array.init(repeating: 0, count: 4)
cr[0] = 3454
let ca_ar = Data(bytes: cr, count: cr.count * 4)
let data = aa_ar + ba_ar + ca_ar
print(“(ar)–(aa_ar)–(br)–(ba_ar)–(ba_ar)–(cr)–(ca_ar)——–(data)”)
打印结果为:
[15, 13, 0, 0]–4 bytes–[2, 1, 21474, 235]–8 bytes–[3454, 0, 0, 0]–16 bytes——–28 bytes

2、字节流还原为相应的数据(拆包);注:按照拼接过程的格式还原。

字节流NSData(OC)、Data(Swift);

1、不同类型数据拼接字节流(拼包)UInt8、UInt16、UInt32组成的数据流拼接;

var ar: [UInt8] = Array.init(repeating: 0, count: 4)
ar[0] = 15
ar[1] = 13
let aa_ar = Data(bytes: ar, count: ar.count)
var br: [UInt16] = Array.init(repeating: 0, count: 4)
br[0] = 2
br[1] = 1
br[2] = 21474
br[3] = 235
let ba_ar = Data(bytes: br, count: br.count * 2)
var cr: [UInt32] = Array.init(repeating: 0, count: 4)
cr[0] = 3454
let ca_ar = Data(bytes: cr, count: cr.count * 4)
let data = aa_ar + ba_ar + ca_ar
print(“(ar)–(aa_ar)–(br)–(ba_ar)–(ba_ar)–(cr)–(ca_ar)——–(data)”)
打印结果为:
[15, 13, 0, 0]–4 bytes–[2, 1, 21474, 235]–8 bytes–[3454, 0, 0, 0]–16 bytes——–28 bytes

2、字节流还原为相应的数据(拆包);注:按照拼接过程的格式还原。

字节流NSData(OC)、Data(Swift);

1、不同类型数据拼接字节流(拼包)UInt8、UInt16、UInt32组成的数据流拼接;

var ar: [UInt8] = Array.init(repeating: 0, count: 4)
ar[0] = 15
ar[1] = 13
let aa_ar = Data(bytes: ar, count: ar.count)
var br: [UInt16] = Array.init(repeating: 0, count: 4)
br[0] = 2
br[1] = 1
br[2] = 21474
br[3] = 235
let ba_ar = Data(bytes: br, count: br.count * 2)
var cr: [UInt32] = Array.init(repeating: 0, count: 4)
cr[0] = 3454
let ca_ar = Data(bytes: cr, count: cr.count * 4)
let data = aa_ar + ba_ar + ca_ar
print(“(ar)–(aa_ar)–(br)–(ba_ar)–(ba_ar)–(cr)–(ca_ar)——–(data)”)
打印结果为:
[15, 13, 0, 0]–4 bytes–[2, 1, 21474, 235]–8 bytes–[3454, 0, 0, 0]–16 bytes——–28 bytes

2、字节流还原为相应的数据(拆包);注:按照拼接过程的格式还原。

部分转自互联网,侵权删除联系

赞(0) 打赏
部分文章转自网络,侵权联系删除b2bchain区块链学习技术社区 » swift字节流操作-拼包、拆包求职学习资料
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

b2b链

联系我们联系我们