我有以下问题:
我想从文件读取为原始二进制字符串:
该文件如下所示(带有转义符,而不是二进制数据):
\ xfc \ xe8 \ x82 \ x00 \ x00 \ x00 \ x60 \ x89 \ xe5 \ x31 \ xc0 \ x64 \ x8b \ x50 \ x30 \ x8b \ x52
使用的代码:
数据= open(“文件名”,“ rb”)。read()
获得的结果:
b“ \\ xfc \\ xe8 \\ x82 \\ x00 \\ x00 \\ x00 \\ x60 \\ x89 \\ xe5 \\ x31 \\ xc0 \\ x64 \\ x8b \\ x50 \\ x30 \\ x8b \\ x52“
带do带。
如何将其读取为二进制字符串,例如:\xaa
character?(无转义字符)
好的。这里的问题是您问的是错误的问题。您的数据文件不是原始的二进制字符串,而是经过编码的,以转义字符编码的字符串。但是,当您需要解码转义符时,您会将其作为原始二进制文件读取。尝试
data = open("filename", "r", encoding='unicode_escape').read().encode('raw_unicode_escape')
反而。
编辑:好的,现在可以工作了。您需要编码成raw_unicode_escape,而不是utf-8(默认值)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句