JRuby Net: Http получить проблему с символами Unicode в теле ответа - PullRequest
0 голосов
/ 27 марта 2012

У меня проблема с JRuby в режиме 1.9. Я получаю файл CSV через HTTP

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 голосов
/ 28 марта 2012

Может ли проблема быть в записи в файл? Попробуйте

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

0 голосов
/ 28 марта 2012

Данные ожидаются в 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)
...