我应该安装什么包才能读取iso-8859-1 latin1
带有编码的文件?
目前,我只看到奇怪的字符而不是文本。
% locale
LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
答案1
latin1 编码“大部分”兼容 UTF-8,因为这两种编码都是 ASCII 的超集。这意味着您应该可以看到普通字母 (az),但看不到变音符号 (é、è 等)。让我们尝试了解文件的实际编码是什么。
首先,该file
命令有时可以检测编码。只需使用:
$ file weird_file
您可以获取weird_file: ISO-8859 text
latin1、weird_file: UTF-8 Unicode text
UTF-8 或其他内容。现在,如果您确定它是 latin1,则显示它的最佳方法实际上是打开编辑器(如 gedit),并在打开文件时选择正确的编码。如果您想将文件转换为 UTF-8,则可以“另存为”并要求 UTF-8。
如果您仍然不知道编码,请尝试使用 Libre Office 打开文档,它通常检测能力很强。您的文件也可能已损坏(例如,UTF-8 文本被解释为 latin1 并保存为 UTF-8),或者更可能的文件从未包含文本。请随意上传它,以便我们检查它。