netty和许多终端设备通信时, netty使用字符串传递数据, 但有时需要按照16进制来解析数据内容,这种情况极容易出现错误, 因为Java中字符串是以"UTF-8"来解析的, 但对于但字符格式字符需要按照ISO_8859_1来解析才可以获取到正确的结果.
程序示例
public static void main(String[] args) {
String msg = "010203F1F2F3";
String s1 = new String(DataUtil.hexStrToBytes(msg));
System.out.println(s1);
String s2 = new String(DataUtil.hexStrToBytes(msg), StandardCharsets.ISO_8859_1);
System.out.println(s2);
}