我正在尝试从 GSM 模块 (Sim800 L) 读取 utf-16 文本。它给了我:
0633064406270645 06280647 0647064506af06cc
而不是:
\u0633\u0644\u0627\u0645 \u0628\u0647 \u0647\u0645\u06af\u06cc
我尝试了很多方法将“\u”添加到第一个字符串,甚至将其转换为字节,但每次 python 都会识别它们是真正的 ascii 字符。
例如:
> Str=r’\u’ + Str
Result: \\u633064406270645 06280647 0647064506af06cc
并且由于双反斜杠,python 无法将其识别为 utf-16
我正在寻找任何方法将 GSM 模块的输出转换为 Unicode。
如果你尝试将十六进制字符串转换为相应的字节,然后进行UTF-16解码,那就更好了。
hexdec_str = "0633064406270645 06280647 0647064506af06cc"
byte_data = bytes.fromhex(hexdec_str.replace(' ', ''))
unicode_str = byte_data .decode('utf-16')
希望您可以通过上述方法获得可读的Unicode字符串