为什么 Linux 将以下内容报告为二进制文件?

为什么 Linux 将以下内容报告为二进制文件?

文件在这里

http://dl.dropbox.com/u/12337149/history.csv

在记事本中查看效果很好,但 Centos 出现以下问题

“history.csv” 可能是一个二进制文件。你看到了吗?

如果我选择“是”,则内容无法正确显示

答案1

您在 Centos 中试图做什么,导致出现问题?仅查看文件,我唯一注意到的是 UTF-16 字节顺序标记。我猜打开文件的程序没有正确处理字符集,而是认为它是二进制格式。

file history.csv我通过以下做法得出了这个结论:

history.csv:Little-endian UTF-16 Unicode 文本,带有 CRLF、CR 行终止符

在 shell 中,当我 cat 文件时,我得到了

��类型摘要日期参考描述期间开盘Ccy大小收盘金额
带佣金14/04/11 4553585 Aurelian Oil & Gas Plc COMM G42H4S "-" - � - 0 -10.16

然后我查看了未知字符的十六进制值(假设如上所示)并看到:

0000000: fffe 5400 7900 7000 6500 0900 5300 7500 ..类型..Su

看看维基百科上的 UTF-16 条目,它说的是字节顺序标记,显示了字节顺序。

因此,这是一条很长的路要走,才能到达“不知道......也许它与字符集无关”:)

相关内容