我有一个包含日文字符的文本文件。我从中读了一行,并希望将其转换为utf-16。我怎么能用Python做到这一点?我的代码看起来像这样 -
with open("C:\\Users\\badri\\jap.txt", 'rb') as f:
for line in f:
u = line.decode(encoding='utf-16',errors='strict')
我收到此错误“LookupError:unknown encoding:utf-16”
原因是我想在utf-16中使用它是因为单词是用空格分隔的,所以文本文件所用的语言无关紧要。我可以使用空格作为分隔符并计算单词数在文件中。
一旦分开,我就可以用这种方式轻松打印 -
u1 = u'\u0048\u0065\u006c\u006c\u006f'
u2 = u'\u0077\u006f\u0072\u006c\u0064'
u3 = u'\u3053\u3093\u306b\u3061\u306f\u4e16\u754c'
print u1
print u2
print u3
Hello
world
こんにちは世界
答案 0 :(得分:0)
这完全取决于文件的编码。
无论哪种方式,您都需要首先解码该行,然后对其进行重新编码,使其成为utf-16。
with open(file_path, "r") as fh:
for line in fh:
string = line.decode("utf-8").encode("utf-16")