0

我在 windows 文件夹中有两个文件。使用此处描述的技术,我发现一种文件编码是 ANSI,另一种是 UTF-8。

但是,如果我打开 cmd 或 Powershell 并尝试使用以下代码在 IRB 中获取编码,我总是得到“CP850”:

File.open(file_name).read.encoding.name # => CP850

或者

File.open(file_name).external_encoding.name # => CP850

Notepad++ 还告诉我一个文件是 ANSI,另一个是 UTF-8。

如何在 Windows 中使用 Ruby 获得正确的编码?

4

1 回答 1

0

无法判断文件的编码是什么,但可以做出有根据的猜测。

当您打开一个文件时,ruby 只是假设它使用默认的 8 位编码(在您的情况下为 CP850)进行编码。

请参阅检测编码

什么是 ANSI 格式?关于ANSI

于 2013-07-29T18:11:49.843 回答