- ベストアンサー
ハッシュにファイルハンドル
お世話になります。 ハッシュにファイルハンドル、またはFileHandleのインスタンスを格納することはできるのでしょうか? 初歩的な質問ですみません・・・
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
できますけど注意が必要です。 #!/usr/bin/perl # -*- coding: utf8 -* use strict; use warnings; use feature ':5.10'; open my $fh, '>', 'sample.txt' or die; my %hash; $hash{handle} = $fh; print $fh 'hello, '; print {$hash{handle}} 'world'; print $fh "\n"; close $fh; 二番目の print でファイルハンドルの部分の外側のブレースをつけないと エラーになります。
その他の回答 (1)
- pick52
- ベストアンサー率35% (166/466)
回答No.2
変数にファイルハンドルを代入するには型グロブを使用します。 $fh = *FILEHANDLE; これで、変数 $fh に FILEHANDLE のファイルハンドルが代入されます。
質問者
お礼
分かりにくくてすみません。m(_ _)m 僕が聞きたいのはスカラーではなくハッシュにファイルハンドルを格納できるかです。
お礼
できました! なんで{}が必要なのかは考えてみます^^; どうでもいいですが実行できなかったもう一つの理由は、continueじゃなくてnextでした。。。 ありがとうございましたm(_ _)m