Проблема с кодировкой символов в Rails v3 / Ruby 1.9.2

Иногда я получаю эту ошибку « недопустимая последовательность байтов в UTF-8 », когда я читаю содержимое из файла. Примечание. Это происходит только тогда, когда в строке есть специальные символы. Я пробовал открыть файл без "r: UTF-8", но все равно получаю ту же ошибку.

open(file, "r:UTF-8").each_line { |line| puts line.strip(",") } # line.strip generates the error

Содержимое файла:

# encoding: UTF-8
290919,"SE","26","Sk‰l","",59.4500,17.9500,, # this errors out
290956,"CZ","45","HornÌ Bradlo","",49.8000,15.7500,, # this errors out
290958,"NO","02","Svaland","",58.4000,8.0500,, # this works

Это CSV-файл, который я получил извне, и я пытаюсь импортировать его в свою БД, он не пришел с "# encoding: UTF-8" "вверху, но я добавил это, так как где-то читал, он решит эту проблему, но этого не произошло. : (

Окружение:

  • Rails v3.0.3
  • ruby ​​1.9.2p0 (18.08.2010, редакция 29036) [x86_64-darwin10.5.0]
7
задан kapso 15 January 2011 в 00:56
поделиться