В Ruby CSV, как записать пустой, вместо "", в файл? - PullRequest
8 голосов
/ 27 мая 2011

Ruby 1.9 версия csv

header %w[first second third]

data = ["column one",,"column three"]

CSV.open("myfile.csv","w") do |csv|
  csv << header
  csv << data
end

В этом простом примере пустая середина ,, в массиве данных вызывает ошибку, но если используется пустая кавычка, "", то нет ошибки и CSVфайл создан.Однако я хочу, чтобы CSV-файл не содержал пустой кавычки.

В частности, как мне создать пустые разделы файла CSV без кавычек?Данные могут быть пустыми переменными, но они все равно должны писать запятые.

Ответы [ 2 ]

24 голосов
/ 27 мая 2011

Используйте

data = ["column one",nil,"column three"]

, который генерирует этот CSV

first,second,third
column one,,column three
0 голосов
/ 10 августа 2018

И если вам нужна новая пустая строка, просто добавьте двойной ноль, например: [nil, nil]

...