From: nobu.nakada@... Date: 2000-05-04T10:29:56+09:00 Subject: [ruby-dev:9626] Re: illegal char in Dir なかだです。 At Thu, 4 May 2000 01:40:37 +0900, gotoken@math.sci.hokudai.ac.jp (GOTO Kentaro) wrote: > > 単に puts したら kterm とかで表示できないとかではなく? だとし > >たら p を使えばちゃんと見えると思いますが。 > > > >$ ruby -e 'p Dir.open(".").to_a' > >[".", "..", "\244s"] > > これをみて$KCODEの値が気になったので、確認したら "EUC" になっ > てたので、$KCODE = "n" にしたら確かに表示されました。 $KCODE は見落としてました。 > つまり問題としては、$KODE = "EUC" のときに、"\244s".inspect > の値が "" になると言うことですね。実行効率を考えると仕方ない > のかな。 マルチバイトのチェックが ismbchar(), mbclen() だけで、2バイト 目以降を見てないからでしょうか。どうも String#inspect に留まら なさそうな雰囲気で、parse.y とかでもそういうチェックは全くして ないんですが、この辺なおそうと思うと先読みとの関係もあってちょっ と面倒そうです。 -- そうだ 強気に ちょっと インチキに☆彡 中田 "Bugるくらいがちょうどいいかも;-)" 伸悦