From: Tietew Date: 2005-09-02T11:13:09+09:00 Subject: [ruby-list:41084] Re: ウムラウトのある文字をファイル名に含むファイルの処理 On Fri, 2 Sep 2005 10:38:18 +0900 In article <53D741AC18A5514EBA71321DAF45B4CC03132AEA@TAIYONET.taiyokogyo.co.jp> [[ruby-list:41083] Re: ウムラウトのある文字をファイル名に含むファイルの処理] 岩崎 弘孝 wrote: > まつもと 様、返信ありがとうございます。 > Win32固有の問題?のような気がしたので > まつもと 様からの返信で少し驚いています。 > > >例外の詳細を教えてください。 > > temp1内に以下の2つのファイルがある状態で > (注: etgere0000.jpgの先頭のeは実際にはアキュート付きです) > a.txt > etagere0000.jpg > > ruby -r fileutils -e "FileUtils.cp_r('temp1','temp2')" > とすると以下のように表示されます。 > > >C:/Program Files/ruby-1.8/lib/ruby/1.8/fileutils.rb:408:in > `initialize': No such file or directory - temp1/./etagere0000.jpg Windows 版の ruby は (mswin/mingw/cygwin 全て) ANSI でコンパイル されているのでアキュートが取れてしまい,アクセスできないのだと思 います。他にも表現できない文字が "?" になってしまうこともありま す。 rubyのみを使用した解は無いです。 根本的な対策は UNICODE でコンパイルすることなんですが,今の ruby1.8/1.9 じゃ無理ですねえ。 英語ロケールにすると Latin1 扱いになるのでたぶん大丈夫なのでしょ う。日本語版 Windows2000 だと無理ですが。 —[ Tietew ]—————————————————————————— メ : tietew@tietew.net / tietew@raug.net / tietew@masuclub.net ホペ: http://www.tietew.net/ Tietew Windows Lab. http://www.masuclub.net/ 鱒倶楽部 指紋: 26CB 71BB B595 09C4 0153 81C4 773C 963A D51B 8CAA