是否有可能检测当前while循环迭代是否是perl中的最后一个?

jak*_*115 6 perl loops while-loop

我从未想过这是可能的,但阅读了一些相互矛盾的评论,并认为我会问专家.

如果我正在逐行读取文件的while循环,如果当前迭代将是循环中的最后一次迭代,是否有办法执行某些代码?我知道我可以简单地将这段代码放在while循环之后,这样代码就会在最后一行之后执行,但我只是想知道迭代是否有任何方法来检测它的位置.

谢谢!

AKH*_*and 6

在您从文件中读取的特殊情况下,是的.

while(<>) {
    if(eof) {
        print "The last line of the file!\n";
    }
}
Run Code Online (Sandbox Code Playgroud)