Python 从 utf16 解码列表元素
Python decode list elements from utf16
我在使用 python 打开的文本文件创建的阅读列表时遇到问题。这是我的代码:
if orderFilesListCount >= 1:
orderContents = list()
with open(os.path.join(directory,fileName), "r") as f:
for line in f:
orderContents.append(line)
orderContents 看起来像(这只是用于演示目的的段落):
'\x000\x001\x005\x00 \x006\x003\x00 \x005\x003\x00 \x004\x004\x00\n', '\x00\n', '\x00'
我认为它是 utf-16,但是当我尝试逐个字符串解码列表字符串时,出现以下错误(据我所知,无法解码 str 对象):
AttributeError: 'str' object has no attribute 'decode'
我该怎么办?我弄错了吗?也许它不是utf-16?
感谢帮助
是的,解码 str
ings 没有意义,因为它们已经被解码了。但是,可以解码 bytes
:
with open(os.path.join(directory,fileName), "rb") as f: # open as binary
data = f.read().decode("utf16")
我在使用 python 打开的文本文件创建的阅读列表时遇到问题。这是我的代码:
if orderFilesListCount >= 1:
orderContents = list()
with open(os.path.join(directory,fileName), "r") as f:
for line in f:
orderContents.append(line)
orderContents 看起来像(这只是用于演示目的的段落):
'\x000\x001\x005\x00 \x006\x003\x00 \x005\x003\x00 \x004\x004\x00\n', '\x00\n', '\x00'
我认为它是 utf-16,但是当我尝试逐个字符串解码列表字符串时,出现以下错误(据我所知,无法解码 str 对象):
AttributeError: 'str' object has no attribute 'decode'
我该怎么办?我弄错了吗?也许它不是utf-16? 感谢帮助
是的,解码 str
ings 没有意义,因为它们已经被解码了。但是,可以解码 bytes
:
with open(os.path.join(directory,fileName), "rb") as f: # open as binary
data = f.read().decode("utf16")