From: matz@... (Yukihiro Matsumoto) Date: 2002-08-27T15:36:42+09:00 Subject: [ruby-dev:18088] Re: IO.read returns nil with empty file まつもと ゆきひろです In message "[ruby-dev:18087] IO.read returns nil with empty file" on 02/08/27, Tanaka Akira writes: |ふと、空ファイルに対して IO.read を使って nil が返ってきて驚きました。 | |% ruby -e 'p IO.read("/dev/null")' |nil | |"" のほうがいいと思うんですが、どうでしょう? なんか理由があったような気がしますが、ログを調べてみないと。 原さんからの指摘だったように思うんだけど。 |ファイルの内容が String として str に入っているとしたとき、 | IO.read(filename) が str 自体を返し、 | IO.read(filename, length) が str[0,length] を返し、 | IO.read(filename, length, offset) が str[offset,length] を返して欲し |いと思うのは変でしょうか? ファイルに対するオフセットはseekからの連想で将来ともバイト単 位になるでしょうし、文字列に対するオフセットは将来には文字単 位になるでしょうから、このAPIはあんまり嬉しくないような気が します。