0

我使用标准 Ruby 1.9 csv 库从 CSV 文件中读取了一些 Unicode 数据,如下所示:

def read_csv(file_name, value)
    CSV.foreach(file_name) do |row|
      if row[0] == value
        return row[1]
      end
    end
end

我得到一个字符串,Unicode 符号在调试中看起来不错。

Invitación

但如果我把它(或与另一个字符串比较)它看起来像这样:

Invitaci\xC3\xB3n

如何将这些十六进制符号转换为值?或者也许我以某种方式读错了这个 CSV 文件?

4

1 回答 1

1

这个其实是我自己发现的。换行就好

CSV.foreach(file_name) do |row|

在线的

CSV.foreach(file_name, encoding: "UTF-8") do |row|

这项工作完美无瑕

于 2012-10-12T09:24:44.580 回答