From: "助田 雅紀" Date: 1998-06-29T11:16:22+09:00 Subject: [ruby-dev:3073] opendir of mswin32-ruby 助田です。 mswin32版 ruby 固有の話です。 Windows 95 + VC++ 5.0 で コンパイルした mswin32 版 ruby で Dir["*.*"].each do |file| puts file end を実行すると、日本語のファイル名の場合、ファイル名が文字化け してしまいます。 missing/nt.c の opendir 関数内で、大文字小文字を区別するファ イルシステムかどうか判断して、区別しない場合(例:Windows 95) には小文字に変換しているためです。 あと、Win32API[.c|.o] なんかが win32api[.c|.o] に変更されてしまう ので、拡張モジュールのコンパイル時に問題があるように思います。 Windows 95 環境では FindFirstFile FindNextFile で求めたファイ ル名を小文字に変換しないでそのまま設定するように変更したいの ですが、それだと何か弊害ありますか? Windows 95 の場合には、小文字変換をしないためのパッチを一応つけ ときます。 助田雅紀(masaki.suketa@tonen.co.jp) --- nt.c Wed Mar 25 12:51:03 1998 +++ nt.c.new Sun Jun 28 13:41:55 1998 @@ -1252,2 +1252,6 @@ + if(IsWin95()) { + downcase = FALSE; + } + //