Java 在Eclipse下运行时,BufferedReader在StdIn上看不到文件结尾
我正在阅读标准输入:Java 在Eclipse下运行时,BufferedReader在StdIn上看不到文件结尾,java,eclipse,stdin,Java,Eclipse,Stdin,我正在阅读标准输入: public static void main(String[] args) { try { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); for (;;) { var line = br.readLine(); if (line == n
public static void main(String[] args) {
try {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
for (;;) {
var line = br.readLine();
if (line == null) break;
System.out.println(line);
}
} catch (Exception e) {
e.printStackTrace();
}
System.err.println("Done.");
}
如果我在终端中使用此选项:
java TheClass </path/to/file
java TheClass Common>Standard Input and output),程序读取文件,但在控制台窗口中输入Ctrl-D(然后正常终止)之前,文件在最后一行之后挂起
同样在Eclipse下,如果我直接使用文件(FileInputStream),文件将被读取到最后,程序将立即终止
我是否遗漏了什么,或者这是一个Eclipse问题
在Linux和openjdk 11上使用Eclipse2020-06