【发布时间】:2016-08-18 04:24:16
【问题描述】:
我有一个要在记事本++ 中查看的文本文件。该文件在一列中包含爬行动物亚种名称的列表,然后我有 DNA 序列 ID,这些 ID 由我认为只是空白的部分分隔。但是当我打开文本文件时,似乎空间被GS和VT等不可打印的字符占用。
例如:
亚种名称、不可打印字符、序列 ID、不可打印字符、序列 ID...等等,直到下一行:
黄鳝GSGSGSGSGS36660VT4560VT23400
有没有办法从我的文本文件中删除所有这些不可打印的GS 和VT 字符?当我尝试打印文件中的每一行时,由于我在记事本++中看到的这些控制字符,我不断得到奇怪的间距。有什么办法可以让它正常打印,而不会因不可打印字符而造成所有间距中断?
更新:
我使用 user312016's advice 并为 Python 安装了 chardet。我发现文件是用 UTF-16LE 编码的。
我从 Dropbox 的教授那里得到了文件。文件被压缩了,我所做的只是解压缩文件。这是一个.txt 文件,我敢肯定他没有提到使用另一个脚本来解析数据。
当我单击解压缩的.txt 文件以在常规记事本中打开它时,它会显示奇怪的符号,我认为这是我在记事本++ 中打开文件时看到的GSs 和VTs。
【问题讨论】:
-
UTF-8 向后兼容 ascii,就像许多其他编码/代码页一样。所有 ascii 字符(字符代码 =128),因此许多只关心 ascii 字符的函数在 utf-8 编码的字节数组中表现正确。出于这个原因,您可以简单地将文件作为字节数组读取(不关心编码)并处理 ascii 'GS's 和 'VT's。
-
好的,所以我使用了 user312016 的建议并安装了 chardet。我发现该文件是用 UTF-16LE 编码的。当我尝试打印文件中的每一行时,由于我在记事本++中看到的这些不可读的字符,我不断得到奇怪的间距。有什么方法可以让它正常打印,而不会因为不可读的字符而造成所有间距中断?谢谢
-
我从 Dropbox 的教授那里得到了文件。文件被压缩了,我所做的只是解压缩文件。当我单击解压缩文件打开常规记事本时,它返回奇怪的符号,我假设这是我在记事本上打开文件时看到的 GS 和 VT++
-
你可能想问你的教授他们是如何编码文件的
-
这是一个
.txt文件,我敢肯定他没有提到另一个脚本来解析数据。
标签: utf-8 text-files ascii