Reader rdr = new InputStreamReader(System.in); BufferedReader br = new BufferedReader(rdr); String s; s = br.readLine(); br.close(); Scanner sc = new Scanner(System.in); s = sc.nextLine(); System.out.print(s);
我注意到,如果关闭BufferedReader,我将无法再从键盘插入输入,因为System.in已经关闭了。无论如何,我可以保留br.close()(删除文件时需要它),然后从键盘添加更多输入吗?
BufferedReader
System.in
br.close()
看起来您需要:
http://commons.apache.org/io/apidocs/org/apache/commons/io/input/CloseShieldInputStream.html
在制作读者之前,先将System.in环绕起来,然后一切都会好起来的,因为使用FileInputStream时不会这样做。