0
如何通過id解析行到數組中?從csv解析行ID
例如:
id | name | descritption
---------------------------
1 | eg1 | dummytext1
1 | eg2 | dummytext2
2 | eg3 | dummytext3
2 | eg4 | dummytext4
例子的問題,我怎麼能解析到一個數組爲2的ID的行?
如何通過id解析行到數組中?從csv解析行ID
例如:
id | name | descritption
---------------------------
1 | eg1 | dummytext1
1 | eg2 | dummytext2
2 | eg3 | dummytext3
2 | eg4 | dummytext4
例子的問題,我怎麼能解析到一個數組爲2的ID的行?
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庫中的文檔here
這個偉大的工程,但其他人可能要注意,fastercsv是現在的標準庫,而且也沒有必要宣佈它爲FasterCSV,CSV正常工作。謝謝 – samayres1992