2011-07-22 11 views
2

Rubyを初めて使用しています。
以下は、単一列のCSVファイルをRuby配列にロードするための私の素朴なコードです。単一列のCSVファイルをRuby配列にロード

質問:良いことがありますか?
特に、アイテムの数をハードコードしないでください。

require 'csv' 
COUNTRIES = Array.new(240) 
i = 0 
CSV.foreach "#{RAILS_ROOT}/config/countries.csv" do |country| 
    COUNTRIES[i] = country[0] 
    i = i + 1 
end 

答えて

6

これを試してみてください:

require 'csv' 
countries = CSV.read("#{RAILS_ROOT}/config/countries.csv").flatten 
+2

+1を。 CSVに1つの列の後にコンマが続く場合、最後に余分な '.compact'が必要になります。 –

+0

は、おそらく変数のCSV.readの出力をキャッチしたいと思う... – Andy

+0

良い点:-) –

関連する問題