如何通过 id 将行解析为数组?
例子:
id | name | descritption
---------------------------
1 | eg1 | dummytext1
1 | eg2 | dummytext2
2 | eg3 | dummytext3
2 | eg4 | dummytext4
示例问题,我如何将 id 为 2 的行解析为数组?
如何通过 id 将行解析为数组?
例子:
id | name | descritption
---------------------------
1 | eg1 | dummytext1
1 | eg2 | dummytext2
2 | eg3 | dummytext3
2 | eg4 | dummytext4
示例问题,我如何将 id 为 2 的行解析为数组?
result = Hash.new { |h,k| h[k] = Hash.new { |j,l| j[l] = [] } }
FasterCSV.foreach( "yourfile.csv", :headers=>true, :header_converters=>:symbol ) do |line|
if line[:id] == 2
result[:id][:name] << line[:name]
result[:id][:descritption] << line[:descritption]
end
end
请注意,此代码未经测试。
关于 CSV 库的文档在这里