a.txt
a
b
c
b.txt
x
y
z
として次のプログラムを実行
open(A,"<a.txt");
open(B,"<b.txt");
while($a=<A>){
while($b=<B>){
print "$a>>>$b<br>";
}
}
close(A);
close(B);
すると実行結果が以下のようになりました。
a>>>x
a>>>y
a>>>z
上の結果だけではなくてa.txtがbの時cの時も出力されるつもりで書いたのですがなぜかaの時しか出力されません。どなたか理由が分る方いませんか?
ちなみに
Linux FedoraCore2
perl5
を使用しています。
No.3
- 回答日時:
open(B,"<b.txt");
を最初のwhileループの内側に移動してください。
open(A,"<a.txt");
while($a=<A>){
open(B,"<b.txt");
while($b=<B>){
print "$a>>>$b<br>";
}
}
今回のとは関係有りませんが、変数$a,$bはsortの時に使われる変数なので、通常スクリプトを書く時に使うとuse strictしていてもミスに気づきづらくなります。できればさけた方が無難でしょう。
No.1
- 回答日時:
原因は B が A の1回目のループでEOFまで達してしまうからです。
A の2回目のループで B から取得しようとしても EOF なので何も取得できず終了しています。
対処としては B のループが終わったあとにファイルポインタを先頭に戻す必要があります。
open(A,"<a.txt");
open(B,"<b.txt");
while($a=<A>){
while($b=<B>){
print "$a>>>$b<br>";
}
seek(B,0,0);
}
close(A);
close(B);
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- UNIX・Linux Linuxについて質問です。 以下のhistoryの出力結果から、sedコマンドのファイル名tmp1 1 2023/02/03 20:11
- Excel(エクセル) Excelにて、フォルダ内のTextファイルをマクロで統合すると文字化けしてしまう時の解消コード 4 2023/01/01 07:32
- CGI htmlからパラメータで、cgiに渡したい。 1 2023/02/06 16:15
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- Ruby プログラミング 3 2023/06/09 14:30
- C言語・C++・C# c言語の問題の説明、各所ごとに 5 2023/07/26 11:03
- その他(プログラミング・Web制作) python質問 1 2023/08/14 11:54
- その他(プログラミング・Web制作) [急募]Pythonについてです。 1 2022/10/03 20:53
- C言語・C++・C# C言語 3 2022/10/04 15:07
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/02/05 09:55
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
MATLABでカーブフィットしたデ...
-
ifstream/ofstream について
-
ファイルの一部を別のファイル...
-
VBAでCSVファイルを途中行まで...
-
openした後、closeしないでプロ...
-
VBAでCSVファイルの特定行を書...
-
エクセルVBA コードが同じでも...
-
awkスクリプトでダブルクォーテ...
-
バッチファイルの作り方(CSV→...
-
csvファイルの横方向への改行に...
-
ExcelをCSV書き出す場合のシー...
-
drtファイルはどうしたら開...
-
無料配布の郵便番号自動入力cgi...
-
ファイルからある文字列の個数...
-
close()で例外が投げられる理由
-
Perlで フォルダ内の全て...
-
Perl 特定のフォルダ以外削除
-
JSP URLに表示される拡張子 .jsp
-
csv出力
-
MATLABのm-fileについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ファイル名を複数個配列で確保...
-
Fortranで1行飛ばして読み込む方法
-
perlで指定範囲を複数ファイル...
-
Pythonでegrep機能をつかいたい
-
「パスが見つかりません」とい...
-
ifstream/ofstream について
-
ifstream を利用した1行分のテ...
-
C++でのテキストファイル読み込...
-
テキストファイルの各行を配列...
-
Perlのワンライナーをスクリプ...
-
perlプログラム 外部複数ファ...
-
Perl 重複カウント 上位3名
-
system関数と引数について
-
shellのコマンド deffの差分の...
-
Pythonで非日本語のUnicode文字...
-
perlで先頭の数値をみて昇順に...
-
while文がうまく動かない
-
Visual Basicを使って三平方の...
-
Perlによるディレクトリ内の連...
-
Perl Grepについて
おすすめ情報