RubyでCSVを読み込みつつ書き込む方法が分かりません。
###前提・実現したいこと
Rubyで下記のようなCSVを読み込みつつ書き込もうとしています。
a,1 b,2 c,3 d,4 e,5 f,6 g,7
結果的に1列目を3列目にコピーしたいのですが、上手く行きません。
Ruby
1 2require 'csv' 3 4CSV.foreach('csv.csv', :encoding => "UTF-8", headers: true) do |row| 5 CSV.open('csv.csv', :encoding => "UTF-8", headers: true) do |csv| 6 csv[2] << row[0] 7 end 8end 9 10
###発生している問題・エラーメッセージ
どうやらCSV.openはCSV.foreachのように列指定が出来ない、メソッドがないようです。
csv.rb:5:in `block (2 levels) in <main>': undefined method `[]' for #<CSV:0x00000002b6ecf0> (NoMethodError)
###補足情報(言語/FW/ツール等のバージョンなど)
ruby 2.0.0
###お願い
そもそもRuby初心者でCSVを扱う方法が皆無と言っていいほど理解できていないのでどなたか分かりやすく説明も含めて回答をして頂けると嬉しい限りです。
よろしくお願いします。
回答4件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/05/18 15:03