【发布时间】:2016-08-22 01:54:30
【问题描述】:
我需要在 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,它可以找到所有可能的标题,并以正确的顺序分配值,在需要的地方添加空格。
【问题讨论】: