我需要将一个哈希数组转换为CSV文件。我找到的各种方法都涉及在数组中插入哈希值:
我正在寻找一种创建CSV文件的方法,该文件可以查找所有可能的标题,并将值按正确顺序分配,在需要时添加空格。
class Array
def to_csv(csv_filename="hash.csv")
require 'csv'
CSV.open(csv_filename, "wb") do |csv|
csv << first.keys # adds the attributes name on the first line
self.each do |hash|
csv << hash.values
end
end
end
end
很不幸,这种方法要求数组中的每个元素都是完整的,例如当我有这个数组时,它甚至不能返回一个有效的csv:
myarray = [ {foo: 1, bar: 2, baz: 3}, {bar: 2, baz: 3}, {foo: 2, bar: 4, baz: 9, zab: 44}]
我正在寻找一种创建CSV文件的方法,该文件可以查找所有可能的标题,并将值按正确顺序分配,在需要时添加空格。