添加' Total'列到CSV

时间:2018-03-17 22:10:05

标签: ruby csv

我有一个包含标题行的CSV文件,如下所示:

composer update

我希望生成一个如下所示的新CSV:

col_0, col_1, col_2
row_1, 10, 20
row_2, 30, 40

我已经使用了CSV.read和CSV.open,它按预期工作(我可以将总数写成行中的新列)但是却找不到以不同方式处理标题的方法,这样的话就是' total'被添加。源文件非常简单,没有引号作为文本分隔符,我希望输出相同。

1 个答案:

答案 0 :(得分:4)

当您打开要写入的CSV文件时,可以先按下标题,然后迭代所需的值作为行。

CSV.open('file.csv', 'w') do |csv|
  csv << %w[col_0 col_1 col_2 total]
  array_of_arrays.each { |row| csv << row }
end

首先以写入模式打开文件,然后推送标题,然后在包含每行每个值的数组数组上,推送每个文件。