我使用configparser来读取我这样做的配置:
file = b'[OWNER]\r\naction=PRODUCT_SENDS_CONFIG\r\nimei=861311003801742\r\nphone_number=0616055459\r\nSN=100004\r\nproduct_name=TACT\r\nproduct_version=01.00\r\n[DATABASE]\r\nstring=\xc4a\xc4a\xc4a\xc4a\r\n'
config = configparser.RawConfigParser(allow_no_value=True)
config.readfp(StringIO(stream.read().decode(encoding='utf-8')))
但是我得到了这个错误:
UnicodeDecodeError:“utf-8”编解码器无法解码第462位的字节0xc4:无效的延续字节
你怎么能有什么解决办法,我不知道在使用configparser之前对文件变量做什么处理,我想把\xc4a读成Ä?在
我相信您可能需要一个不同的编码集,例如
iso-8859-1
,否则:让我们尝试使用
^{pr2}$iso-8859-1
代替:看起来
iso-8859-1
是正确的编码。在有时,在脚本顶部添加特殊注释中使用的编码对Unicode文字也很有用:
↳https://docs.python.org/2/howto/unicode.html
谢谢你的帮助,我用ISO格式来解决它。在
不过,我现在有另一个问题,我必须发送回十六进制数据,就像我以前收到的那样:\xc4a\xc4a\xc4a在字符串中。在
我制作了一个十六进制数据,然后像这样将其附加到我的配置字符串中,我将字符串的每个字符转换为十进制值,最后对其应用十六进制:
但结果显示的十六进制如下:“0xb2a5”,而不是\xb2a5
你知道我怎么解决这个问题吗?在
相关问题 更多 >
编程相关推荐