将CSV转换为数组?

Sau*_*oss 3 ruby csv arrays vim ruby-on-rails

有关如何使用vim将此CSV转换为ruby数组的任何想法?

启动CSV:

Year,Make,Model
1997,Ford,E350
2000,Mercury,Cougar
Run Code Online (Sandbox Code Playgroud)

期望的阵列:

car_info = [
  {'Year' => '1997', 'Make' => 'Ford', 'Model' => 'E350'},
  {'Year' => '2000', 'Make' => 'Mercury', 'Model' => 'Cougar'},
]
Run Code Online (Sandbox Code Playgroud)

我有大约2000个条目,如上面的CSV,我喜欢一种快速重新格式化它以便在我的Rails应用程序中使用的方法.我想使用vim,但我也对其他选项持开放态度.

Har*_*tty 6

FasterCSV.read("path/to/file.csv", :headers => true).map do |row|
  { "Year" => row[0], "Make" => row[1], "Model" => row[2] }
end
Run Code Online (Sandbox Code Playgroud)

PS:安装faster_csvgem

  • `faster_csv`已与1.9捆绑在一起,它被称为`csv`. (3认同)