5.5 と申します。 将来 Ruby 1.9 に移行することを念頭に,テキスト処理のスクリプトを Ruby 1.9 で動かしてみているところです。 Ruby 1.9 の CSV ライブラリで日本語を含む CSV テキストを読もうと すると例外が発生することがあります。 以下のスクリプトです。 # encoding: Shift_JIS require 'csv' csv=CSV.parse <<EOT あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ,あ EOT これで,以下のような例外が発生します。(ファイルパスは省略) csv.rb:1658:in `init_separators': broken Shift_JIS string (ArgumentError) csv.rb の該当箇所を見てみると,行セパレーターを推測しようとして コケているみたいです。 CSV.parse の第二引数に :row_sep=>"\n" と明示的に与えてやると例外 が出なくなりました。 使ったのは ruby 1.9.0 (2008-06-20 revision 17482) [i386-mswin32] です。 -- 5.5 / moji.gr.jp