Как мне разобрать и сохранить данные UTF-8 в файле с разделителями табуляции в Ruby? - PullRequest
0 голосов
/ 23 февраля 2009

У меня есть хэш-имена hsh со значениями в кодировке UTF-8. Например:

hsh ={:name => some_utf_8_string, :text => :some_other_utf_8_string}

В настоящее время я делаю следующее:

$KCODE="UTF8"

File.open("save.tsv","w") do{|file|
  file.puts hsh.values.map{|x| x.to_s.gsub("\t",' ')}.join("\t")
}

Но это случайным образом квакает, потому что я думаю, что некоторые из многобайтового содержимого совпадают с "\ t", и это терпит неудачу. Есть ли рекомендуемая строка, которую я могу использовать вместо "\ t", а также есть ли лучший способ сделать это?

1 Ответ

2 голосов
/ 23 февраля 2009

Если ваши данные действительны utf8, у символа табуляции нет способа «сортировать» совпадение с частью многобайтовой последовательности (это одно из преимуществ utf8 над некоторыми другими многобайтовыми кодировками) Можете ли вы более подробно рассказать о том, что вы подразумеваете под "карканье"?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...