无法从以读/写/追加模式打开的文件中读取

Sri*_*Sri 0 perl

这是我的代码

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的内容.任何人都可以帮助我理解这里有什么问题!(我可能犯了一个愚蠢的错误)

too*_*lic 5

在第一次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)