
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ランキング
-
資格試験に向け、ipodで見れる...
-
スマートに euc ページを sjis ...
-
perlで一定の範囲ごとにカウン...
-
リストの単語がテキストファイ...
-
整形したテキストの行を集計す...
-
どなたか教えて下さい。
-
どこがおかしいですか?教えて...
-
「パスが見つかりません」とい...
-
Perlで文字列の操作がしたい
-
シェル(ksh)でテキスト文書を変換
-
ファイル名を複数個配列で確保...
-
C言語初心者です。プログラミン...
-
perl の挙動について
-
ファイルの中身に対する再帰的検索
-
エクセルVBA コードが同じでも...
-
drtファイルはどうしたら開...
-
csvファイル(表計算的な処理)
-
perlでWMV形式のファイルをダウ...
-
batファイルでrenameができませ...
-
<>の意味が分かりません
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ifstream を利用した1行分のテ...
-
***.cgiの中身は第三者から見ら...
-
ファイル名を複数個配列で確保...
-
C++でのテキストファイル読み込...
-
ファイル名に日付を入れてアッ...
-
「パスが見つかりません」とい...
-
VBSの処理について
-
perlで該当する行のみ別ファイ...
-
特定のデータを更新する
-
perl での文章の取得について
-
今、「Python 3.8 32-bit」を使っ...
-
shellのコマンド deffの差分の...
-
perlで先頭の数値をみて昇順に...
-
ファイル読み込みマッチングに...
-
テキストファイルの各行を配列...
-
テキストファイルになにも入っ...
-
一行だけ読込
-
ファイル操作
-
ファイルから検索条件を読み込...
-
perlでCSVをソートする方法につ...
おすすめ情報