JRuby Net:Http在响应正文中遇到unicode字符问题

时间:2012-03-27 16:12:39

标签: unicode jruby

我在1.9模式下遇到JRuby问题。我正在通过HTTP

获取一些CSV文件
Net::HTTP.start(csv_uri.host) do |http|
  puts http.get(csv_uri.path).body
  File.open(csv_file_path, "w") { |csv| csv.write(http.get(csv_uri.path).body) }
end

作为回应,我看到奇怪的字符代替波兰字符'','''等。是否有可能通过正确的字符编码在JRuby中获取此数据?

2 个答案:

答案 0 :(得分:0)

您期望的数据是UTF-8还是iso-8859-2?根据编码,您可能必须强制编码:

http.get(csv_uri.path).body.encode(Encoding::UTF_8)

http.get(csv_uri.path).body.encode(Encoding::ISO_8859_2)

答案 1 :(得分:0)

问题可能出在写入文件中吗?试试

File.open(csv_file_path,“w:utf-8”)