0

我有一个在 FreeBSD 和 Windows 中打开时显示不同的文本文件。

在 FreeBSD 上:An·lisis e InvestigaciÛn

在 Windows 上:分析和调查

windows 的表示显然是正确的。关于如何在 bsd 中获得该结果的任何想法?

4

7 回答 7

4

问题是它不是 ASCII,而是 UTF-8。您必须使用另一个可以正确检测编码的编辑器,或者将其转换为您在 freebsb 上的编辑器可以理解的内容。

于 2009-02-05T18:43:04.960 回答
1

这不是纯 ASCII。它是 utf-8。尝试支持 utf-8 的 freebsd 编辑器或更改语言环境。

于 2009-02-05T18:35:14.227 回答
1

从字符的显示方式来看,我会说该文件是 UTF-8 编码的 unicode。Windows 正在识别这一点,并正确显示 'á' 和 'ó' 字符,而 FreeBSD 假设它是 ISO-8859-1,这导致这些字符显示为 2 个单独的字符(由于 UTF-8 编码使用 2字节)。您必须以某种方式告诉 FreeBSD 它是一个 UTF-8 文件。

于 2009-02-05T18:46:44.170 回答
0

因此,在进行了更多挖掘之后,如果 1)在 mac 上的 excel 中打开 csv 文件并将其导出为 csv 文件,并且 2)然后在 textmate 中打开它,复制文本并再次保存它就可以了。

结果:文件 file.csv 是

UTF-8 Unicode 英文文本,行很长

原文是:

on-ISO 扩展 ASCII 英文文本,行很长

这种解决方法并不适合,因为这个过程应该是自动化的,感谢到目前为止的帮助。

于 2009-02-05T19:50:16.337 回答
0

打开文件时使用的操作系统无关紧要。重要的是您用来打开它的应用程序。在 Windows 上,您可能正在使用记事本,它会自动将编码识别为 UTF-8。

您在 FreeBSD 上使用的应用程序显然没有这样做。也许它只是无法读取 UTF-8,您需要使用不同的应用程序。或者也许你只需要告诉它使用哪种编码。字符编码的自动检测远非普遍(也远非完美)。

于 2009-02-06T02:15:29.727 回答
0

文件是如何编码的?我会尝试将文件重新编码为 UTF-16。

于 2009-02-05T18:33:36.413 回答