如何在Ruby中使用编码utf-8?

如何在Ruby中使用编码utf-8?,ruby,utf-8,character-encoding,Ruby,Utf 8,Character Encoding,我正在尝试从文件的第一行提取单词: 位置,Feij�,空调、空调、空调、空调 这样: 2.0.0-p247:005>File.foreach(File.first =>“位置,Feij\xF3,AC,a,b,c\r\n”` 但当我尝试使用split时: 2.0.0-p247:008>File.foreach(File.first.split(“,”) ArgumentError:UTF-8中的无效字节序列来自(irb):8:insplit' 起始(irb):8起始 /home/bleh/.rvm

我正在尝试从文件的第一行提取单词:

位置,Feij�,空调、空调、空调、空调

这样:

2.0.0-p247:005>File.foreach(File.first

=>“位置,Feij\xF3,AC,a,b,c\r\n”`

但当我尝试使用split时:

2.0.0-p247:008>File.foreach(File.first.split(“,”)

ArgumentError:UTF-8中的无效字节序列来自(irb):8:in
split'
起始(irb):8起始
/home/bleh/.rvm/rubies/ruby-2.0.0-p247/bin/irb:13:in
'

我所期望的是:费伊

我已经尝试了很多组合,比如.encode和.force_编码


一些想法?

字符
在中是
\xF3
,因此这可能是文件的编码(也可能是

您可以将编码指定为arg to,也可以要求Ruby将其重新编码为UTF-8:

File.foreach(file, :encoding => 'iso-8859-1:utf-8').first.split(",")

字符
ó
在中是
\xF3
,因此这可能是文件的编码(也可能是

您可以将编码指定为arg to,也可以要求Ruby将其重新编码为UTF-8:

File.foreach(file, :encoding => 'iso-8859-1:utf-8').first.split(",")

字符
ó
在中是
\xF3
,因此这可能是文件的编码(也可能是

您可以将编码指定为arg to,也可以要求Ruby将其重新编码为UTF-8:

File.foreach(file, :encoding => 'iso-8859-1:utf-8').first.split(",")

字符
ó
在中是
\xF3
,因此这可能是文件的编码(也可能是

您可以将编码指定为arg to,也可以要求Ruby将其重新编码为UTF-8:

File.foreach(file, :encoding => 'iso-8859-1:utf-8').first.split(",")


你能试试
File.foreach(File,:encoding=>'utf-8')吗?首先
?你好,阿鲁普。是的,我收到了Feij\xF3。尝试拆分时,同样的错误好的,现在试试
File.foreach(File,:encoding=>'ascii-8:utf-8')。首先
?警告:不支持的编码ascii-8忽略此:File.foreach(File,:encoding=>'windows-1252:utf-8')。首先,它看起来像是在拉丁语1补充中编码的。您可以尝试
File.foreach(File,:encoding=>'utf-8')。首先
?你好,阿鲁普。是的,我收到了Feij\xF3。当尝试拆分时,同样的错误好的,现在尝试
File.foreach(File,:encoding=>'ascii-8:utf-8')。首先
?警告:不支持的编码ascii-8忽略此:File.foreach(文件::encoding=>'windows-1252:utf-8')。首先,它看起来像是在拉丁语1补充中编码的。您可以尝试
file.foreach(文件::encoding=>'utf-8')。首先
?你好,Arup。是的,我收到了Feij\xF3。当尝试拆分时,同样的错误好的,现在尝试
file.foreach(文件::encoding=>'ascii-8:utf-8')).first
?警告:不支持的ascii-8编码忽略此:File.foreach(文件:encoding=>'windows-1252:utf-8')。首先,它看起来像是在拉丁语1补充中编码的。您可以尝试
File.foreach(文件:encoding=>'utf-8').first
?你好,Arup。是的,我收到了Feij\xF3。尝试拆分时,出现相同的错误。好的,现在尝试
文件.foreach(文件:编码=>'ascii-8:utf-8')。first
?警告:不支持的编码ascii-8忽略此:文件.foreach(文件:编码=>'windows-1252:utf-8'))首先,它看起来像是用拉丁语1补遗编码的!非常感谢!非常感谢!非常感谢!非常感谢!非常感谢!非常感谢!非常感谢!非常感谢!非常感谢!非常感谢!