因为你的while结构决定了,是每读一个文件就反序输出,而不是都读进来再一次性的处理。你可以改一下,放一个临时变量:如123456while(defined($s=<>)){$t.=$s;}$t=reverse($t);print "$t";