码迷,mamicode.com
首页 > 其他好文 > 详细

二进制协议设计记录

时间:2018-10-08 10:20:10      阅读:134      评论:0      收藏:0      [点我收藏+]

标签:16进制   协议设计   写入   byte   使用   strong   大端   各类   自身   

正向:将各类数据转换为byte[],再转16进制字符串,比如:

short,int,long:可以按8(1byte)的倍数(按各自所占byte数决定移位多少次,每次移位8的几倍数)向右移位(>>>),和0xFF按位与,取高位byte放在byte数组低索引位(大端模式),然后按byte[]的每个byte,使用Integer.toHexString获取对应16进制字符串(一个8位的byte对应2个代表4位的16进制字符),<10(1个16进制字符)的左边补0字符

字符串:按规定编码调用本身getBytes,将转换的byte[]长度(转换为byte[]后)和byte[]自身都按上面加粗表示的方法转换成16进制字符串先后写入

加密:取getBytes的byte[]进行加密,将加密后的byte[]按上述规则转换

字节流(就是byte[]):直接将byte[]长度(转换为byte[]后)和byte[]自身都按上面方法转换成16进制字符串先后写入

 

二进制协议设计记录

标签:16进制   协议设计   写入   byte   使用   strong   大端   各类   自身   

原文地址:https://www.cnblogs.com/free-wings/p/9752685.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!