首页 > 其他 > 详细

二进制协议设计记录

时间:2018-10-08 10:04:56      阅读:86      评论:0      收藏:0      [点我收藏+]

正向:将各类数据转换为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进制字符串先后写入

 

二进制协议设计记录

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

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!