从ruby中的csv文件中删除尾随逗号

时间:2015-04-09 07:13:58

标签: ruby csv

在一个csv文件中,我有一些我想要删除的尾随逗号,但逗号的长度各不相同。所以我不能使用gsub删除它们。有没有人知道一种方法来读取csv文件,删除行中的任何尾随逗号,并重写为相同的csv文件?

1 个答案:

答案 0 :(得分:1)

您可以逐行阅读文件,sub所有尾随,。您无法直接编辑该文件,因此最好的办法是创建TempFile并在完成后用它替换您的csv文件。这里:

require 'fileutils'
require 'tempfile'
t_file = Tempfile.new('temp.txt')
File.open("/path/to/csv", 'r') do |f|
f.each_line{|line| t_file.puts line.chomp.sub(/,$/,'') }
    end
t_file.close
FileUtils.mv(t_file.path, "/path/to/csv")
相关问题