【发布时间】:2021-05-28 13:55:44
【问题描述】:
我有像“D09FD0B5D180D0BDD0B8D0BA”这样的十六进制字节字符串,这是“Перник”。
对于西里尔字母的每个字母,我需要 2 个字节。
对于“П”,我需要“D0 9F”。
如果我使用:
char letter = (char) 1055; // this is "П"
我的问题是如何从十六进制“D0 9F”获取整数值“1055”。 或者如何从“D09FD0B5D180D0BDD0B8D0BA”转换为“Перник”。
【问题讨论】:
-
首先将十六进制字符串转换为字节数组。将此用作ByteArrayInputStream 的输入并将其包装在InputStreamReader 中,并使用正确的Charset 将内容作为字符串读取。您应该了解有关字符编码的更多信息。