Escape-запятые значения в fastcsv - PullRequest
5 голосов
/ 10 ноября 2010

Я работаю над поколением CSV.Я разделяю значения, которые разделяются запятой (,).Если значение в поле содержит запятую, то оно не должно отделять поле в excel.Так что я хочу поставить там побег персонажа.Я использую FasterCsv.Так как я могу поставить escape-символ.Что такое escape-символ fastcsv?

Ответы [ 4 ]

8 голосов
/ 10 ноября 2010

Просто заключите в кавычки каждое поле (двойные кавычки по умолчанию) и запятые внутри них игнорируются:

CSV.generate(:col_sep=>',', :quote_char => '"') do |row|
    row << ["Quid, quid", "latinum dictum"]
    row << ["sit, altum", "viditur."]
end
=> "\"Quid, quid\",latinum dictum\n\"sit, altum\",viditur.\n"
2 голосов
/ 10 ноября 2010

Если у вас есть запятые в ваших данных, установите другой разделитель столбцов с опцией: col_sep.Если вам нравятся запятые, и вы не можете жить без них, установите данные в кавычках.

1 голос
/ 10 ноября 2010

Если вы используете методы FasterCSV, это будет обработано для вас автоматически!

0 голосов
/ 06 октября 2014

креативный способ - заменить настоящую запятую на похожую.Это может быть глупо, все зависит от вашего варианта использования.Это было хорошо для нас - я думаю.Мне нужно опубликовать это, прежде чем я передумаю, lol

my_string.gsub(',','‚')

Я не уверен, что копия вставила это правильно, но вы можете создать его на Mac, удерживая ALT(option) + ,

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