c# 数据转换为字节数组

解决TCP传输过程中的粘包和分包问题

解决的办法是在发送的每一条字节数组的头部添加固定字节长度的字节数组,用来记录每条完整消息的长度。

消息长度用int32类型 转换为 byte[] 是注意要使用 bitconverter.getbytes();

不能使用encoding.utf8.getbytes 方法

区别在于 encoding.utf8.getbytes 按照引用类型转换  不同大小的数字转换成bytes 之后所占用的字节数是一样的,就无法判断接收到的数据在合并后的bytes中 真实起始位置

使用bitconverter.getbytes();转换时,在限定大小的范围内的数字,都会转换成为固定字节长度的bytes。

猜你喜欢

转载自www.cnblogs.com/pz904/p/12066450.html