标签: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