有一个数组,如何正确地在 csv 中推导出一个文件?
arr1 = [["A","B"], ["C","D"], ["E","F"], ["G","H"]]
Run Code Online (Sandbox Code Playgroud)
csv 中的预期结果:
A,B
C,D
E,F
G,H
Run Code Online (Sandbox Code Playgroud)
我这样做:
out_file = File.open('file.csv', 'w')
arr1.each_index do |inx|
arr1[inx].each do |val|
out_file.puts val
end
end
Run Code Online (Sandbox Code Playgroud)
但是,在一列中打印所有内容:
A
B
C
D
..
Run Code Online (Sandbox Code Playgroud)
如果通过 输出到控制台p val,则在每个值中为 /r:
"A\r"
"B\r"
"C\r"
"D\r"
Run Code Online (Sandbox Code Playgroud)
我做错了什么?
您没有写入文件。
require 'csv'
CSV.open('file.csv', 'w') do |csv|
arr1.each { |ar| csv << ar }
end
Run Code Online (Sandbox Code Playgroud)