代码之家  ›  专栏  ›  技术社区  ›  lifemoveson

Ruby-CSV中的输出文件位于一列中

  •  -2
  • lifemoveson  · 技术社区  · 7 年前

    我试图在CSV文件中打印我的值,如下所示,其中数据是哈希数组。

    更新:

    CSV.open(fn, "wb") do |csv|
     #first rows are always headers and the headers value is generated from the array of hashes
     data.each do |name, values|
        csv << [name, values.join(",")]
    end
    

    值包含如下数据: true,false,false,false light .

    但出于某种原因,我的列只有2个,而不是5个。“值”列连接在一列中。

    如何使用上述代码实现多列?

    1 回复  |  直到 7 年前
        1
  •  0
  •   Pablo    7 年前

    我认为这应该奏效:

    CSV.open(fn, "wb") do |csv|
      data.each do |name, values|
        csv << [name, *values]
      end
    end
    

    http://ruby-doc.org/core-2.0.0/doc/syntax/calling_methods_rdoc.html#label-Array+to+Arguments+Conversion