(ArgumentError)というエラーが出ました。ちなみに書いたコードがコチラ。rowend一応csvファイルは、item,price,valueりんご,500,1ばなな,80,5ふむ。utf-8)はあるし、もちろんutf-8で保存してるし、簡単に作ったcsvもutf-8。調べていくうちにStringのインスタンスがEncoding情報を持つようになったという情報を読んで、あぁそういえばエンコーディングを調べるメソッドがあったなと思ってcsvファイルのエンコーディングを調べてみる。"r").read.encodingで結果がEncoding:Windows-31J、なるほど意味が分からない。え?なんでutf-8じゃないの?で、色々調べたり考えたりしたんだけど、csvってそもそも勝手にShift-JIS(Windows-31J)になっちゃうとか、っていうか他人に使ってもらうと考えた場合csvファイルをExcelで作ってくるとしたら自然にShift-JISになるよねという解釈に落ち着いたのでcsvファイルをShift-JISで作る事に。するとWEBで見つかるコードが全部参考になった。結論はcsvはShift-JISでいこう。ExcelはShift-JISのcsvしか読めないみたいだし。いうわけで、csvをShift-JISにしたら思い通りの事ができた。:symbol)と一緒なので、csvの先頭行が日本語の場合はsymbolにできないのでおそらく動かない。先頭行が日本語のデータは普通にCSV.openの方が良いので使い分ける事。アクセスしやすいのでCSV.tableが好きなのだけど。