Ruby 编码问题
Ruby encoding issue
我正在保存来自网络的 CSV 文件。在网络上它似乎编码正确,但当我将它保存在我的应用程序的文件夹中时,我发现字符“µ”丢失了,而“�”出现在它的位置。
我获取数据的页面在 header 中没有编码,无论如何我在我的代码(rake 任务)中指定读取编码如下:
open("public/test.csv", "w:UTF-8") do |file|
open("http://url.CSV", "r:UTF-8") do |row|
file.write(row.read)
end
end
任何帮助将不胜感激,顺便说一句,我正在使用 RubyMine。
HTTP 的默认编码是 ISO-8859-1。保存的 CSV 文件使用该编码,因此在 Ruby 中读取它时,您必须正确设置编码:
File.open('filename.csv', 'r:ISO-8859-1') do |f|
# do something with the contents
end
我正在保存来自网络的 CSV 文件。在网络上它似乎编码正确,但当我将它保存在我的应用程序的文件夹中时,我发现字符“µ”丢失了,而“�”出现在它的位置。
我获取数据的页面在 header 中没有编码,无论如何我在我的代码(rake 任务)中指定读取编码如下:
open("public/test.csv", "w:UTF-8") do |file|
open("http://url.CSV", "r:UTF-8") do |row|
file.write(row.read)
end
end
任何帮助将不胜感激,顺便说一句,我正在使用 RubyMine。
HTTP 的默认编码是 ISO-8859-1。保存的 CSV 文件使用该编码,因此在 Ruby 中读取它时,您必须正确设置编码:
File.open('filename.csv', 'r:ISO-8859-1') do |f|
# do something with the contents
end