我正在做一个非常简单的文本解析程序,使用的是 friend 给我的文件。 但是,当我像这样使用扫描仪打开文件时,
Scanner scan = new Scanner(new File(path));
System.err.println(scan.hasNext());
while(scan.hasNextLine())
System.err.println(scan.nextLine());
System.err.println(scan.next());
结果:
false
Exception in thread "main" java.util.NoSuchElementException
at java.util.Scanner.throwFor(Scanner.java:855)
at java.util.Scanner.next(Scanner.java:1364)
at Test.main(Test.java:18)
扫描器将文件(大约 1400 行长)视为空文件。
谁能想到扫描仪可能无法看到文件的任何原因?我怀疑文件是从 Windows 机器导入到 Linux 机器的事实可能与它有关,但我对其他可能性持开放态度
编辑格式和代码错误
最佳答案
我使用 new Scanner(new BufferedReader(new FileReader(fileName)))
而不是 new Scanner(new File(fileName))
解决了这个问题
关于Java 扫描器无法读取文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4763298/