Python:如何读取和解析unicode utf-8文本文件?
我从Excel导出了UTF-8格式的文本,现在想用Python来读取和解析这些数据。我在网上查了很多资料,已经尝试过一些方法,比如:
txtFile = codecs.open( 'halout.txt', 'r', 'utf-8' )
for line in txtFile:
print repr( line )
但是我遇到的错误是:
UnicodeDecodeError: 'utf8' 编码无法解码位置0的字节0xff: 意外的代码字节
我用十六进制编辑器查看文本文件,发现开头的值是FFFE。我还尝试过:
txtFile.seek( 2 )
在'open'之后加上这个,但这样又出现了不同的错误。
4 个回答
2
接着Johnathan的评论,这段代码应该能正确读取文件:
import codecs
txtFile = codecs.open( 'halout.txt', 'r', 'utf-16' )
for line in txtFile:
print repr( line )
5
这个文件不是UTF-8格式;它是带有字节顺序标记的UTF-16LE格式。
2