我正在编写一个使用 BufferedReader
读取和处理文件内容的简单程序。
BufferedReader br = new BufferedReader( new InputStreamReader(System.in) );
System.out.println("Enter the file name to read");
String fileName = br.readLine();
br.close();
// Process file contents
br = new BufferedReader( new InputStreamReader(System.in) );
System.out.println("Enter another file name to read");
fileName = br.readLine();
br.close();
但是当我调用第二个 br.readLine()
读取另一个文件名时,出现以下异常:
Exception in thread "main" java.io.IOException: Stream closed
我不明白如何关闭 System.in
流。
我犯了什么错误,我该如何解决?
最佳答案
流已关闭,因为您正在关闭它
br.close();
您在阅读文件名后发布。
不要关闭那个阅读器,也不要为 System.in
创建一个新阅读器 - 只需重新使用那个阅读器。不过,请使用不同的文件来读取文件。
关于java - 如何使用 System.in 修复 "IOException: Stream closed"异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9349580/