如何确定何时到达文件结尾?
我正在尝试从文本文件中读取文本。 我需要帮助搞清楚文件结束的时间。 我怎样才能在Java中确定这一点?
FileInputStream istream = new FileInputStream("\""+filename+"\""); Scanner input = new Scanner(istream); while(EOF != true) { .... }
谢谢!
您可以使用hasNextLine()
进行检查:
Scanner input = new Scanner(new File("\""+filename+"\"")); while(input.hasNextLine()) { String data = input.nextLine(); }
基于行的检索可能是您想要的,但基于令牌的检索也很有用。 您可以在Scanner
文档中看到
public boolean hasNext()
如果此
Scanner
在其输入中有另一个标记,则返回true
。 在等待输入扫描时,此方法可能会阻塞。Scanner
不会超过任何输入。指定者:接口
Iterator
hasNext
返回:当且仅当此
Scanner
具有另一个令牌时才返回true
抛出:
IllegalStateException
– 如果此Scanner
关闭另请参见:
Iterator