Notepad ++只称为"ANSI"的编码,是否有人知道如何为Ruby调用它?

Owe*_*n_R 24 ruby notepad++ diacritics character-encoding codepages

我有一堆.txt,Notepad ++说(在它的下拉"编码"菜单中)是"ANSI".

它们中有德文字符,[äöüß],在Notepad ++中显示正常.

但是当我File.read 'this is a German text example.txt'这些时,他们并没有出现在irb中.

那么有谁知道我应该给出什么样的论据Encoding.default_external=

(我假设这是解决方案,对吗?)

'utf-8'或时'cp850',它将"äöüß"中的"ANSI"文件读作"\ xE4\xF6\xFC\xDF"...

(请不要犹豫,在你的答案中提到显而易见的"明显"事物;我几乎和你一样新生,并且仍然知道这个问题就足够了.)

Jör*_*tag 13

它们的含义可能是ISO/IEC 8859-1(又名Latin-1),ISO-8859-1,ISO/IEC 8859-15(又名Latin-9)或Windows-1252(又名CP 1252).所有4个人都ä处于原位0xE4.


Lov*_*ell 8

我在Notepad ++论坛上找到了这个问题的答案,在2010年由CChris回答,他似乎是权威的.

问题:编码ANSI?

回答:

这将是您的计算机的系统代码页(代码页0).

更多信息:

显示您当前的代码页.

>help chcp
Displays or sets the active code page number.

CHCP [nnn]

  nnn   Specifies a code page number.

Type CHCP without a parameter to display the active code page number.

>chcp
Active code page: 437
Run Code Online (Sandbox Code Playgroud)

代码页标识符

Identifier  .NET Name  Additional information
437         IBM437     OEM United States
Run Code Online (Sandbox Code Playgroud)