每封信后的字节。如何摆脱它们

时间:2017-01-18 11:23:55

标签: python python-3.x

当我打开我的.txt文件时,为什么我的Python会显示如此奇怪的模式?如何正常加载它(我使用Python 3.5)?换句话说,我希望在我拥有的每一封信之后摆脱\ x00。

In:
f = open(file_path, encoding="utf-8", errors="ignore")
read_data = f.read()
read_data[0:100]

Out:
'H\x00i\x00e\x00r\x00b\x00i\x00j\x00 \x00w\x00i\x00l\x00 \x00i\x00k\x00 \x00u\x00 \x00m\x00e\x00d\x00e\x00d\x00e\x00l\x00e\x00n\x00,\x00 \x00d\x00a\x00t\x00 \x00i\x00k\x00 \x00m\x00i\x00j\x00n\x00 \x00s\x00p\x00a\x00a\x00r\x00r\x00e\x00k\x00e\x00n\x00'

我在记事本中打开文件时的文件示例:

Hierbij wil ik u mededelen, dat ik mijn spaarrekening onder nummer __LARGENUMBER__ wil beëindigen.                                                                          
Graag maak ik van de gelegenheid [... row continues]                    
Hierbij verzoek ik u de volgende rekening op te [... row continues]

1 个答案:

答案 0 :(得分:4)

您的文字很可能不是使用UTF-8编码,而是使用UTF-16或UCS-2编码。这意味着所有这些NUL实际上都是之前字符代码的一部分。验证它可能需要使用第二个字节的字符,如BOM或者ë。在阅读文件时尝试使用utf_16_le作为编码。