小编kas*_*iko的帖子

Java Scanner(文件)行为不当,但Scanner(FIleInputStream)始终使用相同的文件

我对Scanner有一种奇怪的行为.它将使用我在使用Scanner(FileInputStream)构造函数时使用的一组特定文件,但它不会与Scanner(File)构造函数一起使用.

情况1: Scanner(File)

Scanner s = new Scanner(new File("file"));
while(s.hasNextLine()) {
    System.out.println(s.nextLine());
}
Run Code Online (Sandbox Code Playgroud)

结果:没有输出

案例2: Scanner(FileInputStream)

Scanner s = new Scanner(new FileInputStream(new File("file")));
while(s.hasNextLine()) {
    System.out.println(s.nextLine());
}
Run Code Online (Sandbox Code Playgroud)

结果:文件内容输出到控制台.

输入文件是包含单个类的java文件.

我以编程方式(在Java中)仔细检查:

  • 该文件存在,
  • 是可读的,
  • 并且具有非零文件大小.

Scanner(File)在这种情况下通常适合我,我不知道为什么现在没有.

java java.util.scanner java-io

14
推荐指数
2
解决办法
5399
查看次数

标签 统计

java ×1

java-io ×1

java.util.scanner ×1