1

我有一堆需要写入 CSV 文件的数据。目前我正在这样做:

CSV.open("file.csv" , 'w' ) do |writer|
   readfromCSV.each do |x|
     writer << x
   end
end

我需要序列化所有数据并将其写入 CSV 文件。

我是序列化的新手,我读到了Marshal.dump(x)which 序列化数组,但是当我尝试执行writer<<x.

我阅读了有关选项的信息dump(ary_of_objs, io = "", options = Hash.new),但不明白在这种情况下如何实现它。

4

1 回答 1

1

http://www.ruby-doc.org/stdlib-2.0.0/libdoc/csv/rdoc/CSV.html解释了 csv 模块中的功能。

假设您要将 csv 中的第一列字符串设为小写;

CSV.open("file.csv" , 'w' ) do |writer|
   readfromCSV.each do |row|
     # row is a csv row, pretty much an array
     row[0] = row[0].downcase
     writer << row
     #alternatively, you could do it manually eg. writer << ["this", "rocks"]
   end
end
于 2013-09-17T05:08:35.880 回答