Bruce.です。
#今tvkでは俗・絶望先生のopが流れています。
#早くCDでねーかなあ。
というわけで、
林 宏 さんは書きました (2008/01/12 23:43):
> Microsoft Windows Xp Professional 2002 Service Pack 2
> Activeperl 5.8.8_build820
> スクリプトを shift-jisで書いてます。
> perl/tk でファイル(ディレクトリ)を読込んで
> chdir($drc) しようと思うのですが、ディレクトリに日本語が
> 入っていると、ディレクトリに移動したり、ファイルが読込めません。
それはSjiftJISの呪いとuse encodingの祟りです。
> sub Add_Date {# ファイル名先頭に日付(20071010_XXXXXXXXX)の「20071010_」を付ける
> ($drc) = &OpenFile;
> chdir($drc); # $drc に日本語があると、移動できない
ここで$drcはフラグつきUTF-8文字列ですよね。
これを chdir に渡しても、よろしく変換してくれることはありません。
そのため存在しないディレクトリに chir しようとすることになり、結果として
失敗します。
ファイルの読み込みも根は同じで、見つからないファイルをオープンしようとして
失敗しています。
このほかにも '\' の災いなんてのがありますので、use encoding を使って
どうこうしようというのは激しくオススメできません。
では。
--
木村浩一
I thought what I'd do was, I'd pretend I was one of those deaf-mutes or should I?
mail kbk [at] kt.rim.or.jp
web www.kt.rim.or.jp/~kbk/zakkicho/
homepage3.nifty.com/farstar/