这是我的代码
use strict;
use warnings;
open(INFILE,"<File1") or die "Can't open the file";
open(OUTFILE,"+>>File2") or die "Can't open the file";
while(<INFILE>) {
print OUTFILE "$_";
}
while(<OUTFILE>) {
print "$_\n";
}
Run Code Online (Sandbox Code Playgroud)
我试图将File1的内容移动到在读取,写入和追加模式下创建的File2.这里的问题是我用File1内容创建了我的File2,但是print里面的语句while(<OUTFILE>) {}不是打印File2的内容.任何人都可以帮助我理解这里有什么问题!(我可能犯了一个愚蠢的错误)
在第一次while循环之后,你就在结束了OUTFILE.所以,第二个while循环永远不会真正执行.在阅读之前使用seekOUTFILE:
use strict;
use warnings;
open(INFILE,"<File1")or die "Can't open the file";
open(OUTFILE,"+>>File2")or die "Can't open the file";
while(<INFILE>)
{
print OUTFILE "$_";
}
seek OUTFILE, 0, 0;
while(<OUTFILE>)
{
print "$_\n";
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
146 次 |
| 最近记录: |