jma*_*erx 4 windows-7 language unicode ascii
我有一个应该用俄语写的文本文档,但它似乎是 ascii:
Óñòàíîâêà:
1)Çàïóñêàåì QuidamStudioSetup3.15.exe
2)Ïðè çàïðîñå ñåðèéíîãî íîìåðà ââîäèì
Run Code Online (Sandbox Code Playgroud)
如何将其转换为可读的 unicode 俄语字符?
它既不是“ASCII”也不是“ASCII俄语”。
在 Unicode 普及之前,大多数计算机系统都使用 ISO-8859 字符编码,其中有 16 种,每种编码用于不同的地区(中欧、西里尔、希腊……)。Windows 有自己的“代码页”,非常相似,但在其他未使用的范围内有额外的字形。所有这些字符编码都是 8 位的,仅在后半部分 (128-255) 有所不同。
这些编码的问题在于,程序几乎不可能确定使用哪种编码来保存文件,除非明确指定(例如在 HTML 页面中;但是,纯文本文件没有此类元数据标签)。阅读维基百科关于Mojibake 的文章以获得更详细的描述。
在您的示例中,文档是使用Windows-1251(西里尔文)保存的,但您的程序读取它就像是Windows-1252(西欧)一样,它在相同位置具有非常不同的字符。对于计算机来说,它看起来完全没问题——它不理解语言或脚本。(虽然有些程序会进行统计分析以确定正确的编码,但某些 Web 浏览器具有这样的功能。)
有几种方法可以将此类文本转换为 Unicode:
使用您的网络浏览器:
将.txt
文件拖入浏览器。
从视图?字符编码(或?Firefox的Web开发字符编码,或?扳手工具编码),选择正确的原始编码:“西里尔文(Windows-1251)”你的情况。
使用Notepad2文本编辑器:
打开文件。
从文件?编码?Recode...,选择正确的原始编码。
使用 GNUiconv
以及来自GnuWin32或Gettext for Win32 的Windows 二进制文件。
iconv -f cp1251 -t utf-8 < myfile.txt > myfile.fixed.txt
Windows 记事本将正确读取 UTF-8 和 UTF-16 编码的文本。
归档时间: |
|
查看次数: |
8532 次 |
最近记录: |