目的:以易于阅读的格式存储和操作有关工作提示的数据。因此,制表符分隔如下:
2017-07-27 THU 16:00-22:00 21.00
我想使用CSV.read方法将信息存储在一个数组数组中,并且可以操作它,但是我无法想出一个很好的方法来将该数组写回一个TAB分隔文件。
如何以该格式化将数组数组写入txt文件?
tips = CSV.read("tips.txt",:col_sep => "\t")
CSV.open("tipsoutput.csv","w") do |csv|
csv << tips
end
给出如下输出:
"[""2017-07-27"", ""THU"", ""16:00-22:00"", ""21.00""]",
答案 0 :(得分:1)
CSV::open
实际上可以带3个参数,第三个是csv选项(read
也一样),所以你可以这样做:
CSV.open("tipsoutput.csv", "w", col_sep: "\t") do |csv|
csv << ["2017-07-27", "THU", "16:00-22:00", "21.00"]
end
生成文件:
2017-07-27 THU 16:00-22:00 21.00
但是,你需要遍历数组,因为我不知道任何可以让你一次写多个数组(行)的东西,所以像这样:
CSV.open("tipsoutput.csv", "w", col_sep: "\t") do |csv|
tips.each { |tip| csv << tip }
end