我记录了很多从字节字符串解码为unicode(UTF-8)的文本
例如:
我从上游收到了大量字节字符串,如:
b_st = b'\xff\xd8\xff\xe0\x00\x10JFIF\x00\x01\x01\x00\x00\x01\x00\x01\x00\x00\xff\xfe\x00'
我在解码后把它们保存在我的电脑里
b_un = b_st.decode("utf-8", "replace")
正如您所看到的,初始字节字符串具有无效的
要解码为UTF-8的字符(例如\xff
),以便替换这些字符
在那之后,我尝试从unicode文本中恢复字节字符串,但它将另一个字节字符串返回给我,与原始字符串不一样。
是否可以恢复原始字节字符串
顺便说一句,我并没有故意解码这些文本,我并没有阅读一个类的默认行为,该类会在必要时自动将任何文本转换为unicode
replace
是一个有损的codec error handler,用\ufffd
(unicode替换字符)替换任何不可解码的字节因此,无法恢复原始图像
如果您收到一个字节字符串,您可以使用二进制io对象将其写入文件:
相关问题 更多 >
编程相关推荐