【发布时间】:2017-04-27 04:41:50
【问题描述】:
我正在使用 open() 读取日志文件,但我得到了奇怪的内容。如果我用记事本++打开日志文件,复制内容并粘贴到新文件中,保存为.txt文件,open()可以读取正确的内容。 代码是:
with open(a_file, 'r') as my_file:
for line in my_file:
line_number += 1
if line_number == 1060 or line_number == 1061:
print(line)
我尝试了很多方法:
- cat 日志文件并重定向到一个新的文本文件,没有帮助
- 在 Notepad++ 中打开日志文件,另存为...一个新的文本文件,没有帮助
- 使用 linux tail 命令,将输出重定向到一个新的文本文件,没有帮助
- 使用python编解码器将其读取为utf-8,出现错误“python编解码器无法解码位置0的字节0xff:无效起始字节”
- 在 Notepad++ 中打开日志文件,复制其内容,粘贴到新文件中,保存到新的文本文件中,就可以了。
【问题讨论】:
-
日志文件是如何创建的?
-
发布日志文件的内容
-
@saulspatz 我不知道它是如何创建的,我猜它是由一些跟踪解码工具创建的。现在我发现如果我将它们拆分成小文件,vim只能显示第一个拆分(xaa),其他无法正确显示。
-
@vks 如果我通过 vim 打开拆分 xab,行如下:^@ ^@ ^@ ^@ ^@s^@e^@r^@v^@i^@c^ @e^@R^@e^@q^@u^@e^@s^@t^@ ^@{^@^M^@
-
可能是编码问题。看看这个问题stackoverflow.com/questions/23918120/…
标签: python