姬長信(Redy)

Java中的命令行管道输入


这是一段简单的代码:
import java.io.*;
public class Read {
 public static void main(String[] args) {
     BufferedReader f = new BufferedReader(new InputStreamReader(System.in));
  while(true)
  {
   String x = null;
   try{
    x = f.readLine();
   }
   catch (IOException e) {e.printStackTrace();}
   System.out.println(x);
  }
 }
}

我执行此操作:java Read< input.txt中 一旦input.txt被完全传送到程序中,x就会不断获得无限空值.为什么会这样?在将文件送入代码后,我是否可以使标准输入(命令行)处于活动状态?
我试过关闭流并重新打开,它不起作用.重置等也.