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