鴫谷です。

At Wed, 03 Oct 2001 16:01:43 +0900,
NAKAMURA, Hiroshi <nakahiro / sarion.co.jp> wrote:
> 
> > NaHi さんの csv-1.0.1 を使用させていただいてますが、
> > CSV.parseLine すると、最後のカラムの isNull が true になります。
> 
> バグです。修正して1.0.2をリリースしましたので、
> 試してもらえると嬉しいです。RAAにあります。

修正ありがとうございます。
最後のカラムの isNull が false になることを確認しました。

> カラム数についてもバグです。これも同時に修正しました。

こちらはまだ修正されていないようです。

ただ、1.0.0 -> 1.0.1 の修正内容から考えると、現在の動作が
正しいような気がしてきました。

今まで (1.0.0) は、

rows = Array.new
idx = 0
begin
  row = Array.new
  cols, idx = CSV.parseLine(csv, idx, row)
  rows << row
end until cols == 0

のように parse していました。これだと最後に cols が 1 を
返すと困るのですが、

rows = Array.new
idx = 0
while idx < csv.size
  row = Array.new
  cols, idx = CSV.parseLine(csv, idx, row)
  rows << row
end

とすれば良いのですね。

--
Teruki Shigitani <shigi / jp.fujitsu.com>