我正试图实现棋盘游戏的用户输入界面。我试图一次获得一个用户输入,然后将其写入一个文件(因为我需要保存用户所做的动作列表)。到目前为止,我的工作很好(读取输入并将其写入文件),但是,只要用户想要停止输入,程序就会停止工作。即;当你按下ctrl + c时,程序就结束了。Java交互式输入EOF
这是我到目前为止,文件名可变已申报的主要功能
public static void main(String[] args) throws IOException {
BufferedReader inputReader = new BufferedReader (new InputStreamReader (System.in));
try {
FileWriter outFile = new FileWriter (fileName);
PrintWriter out = new PrintWriter (outFile);
System.out.print ("Enter move: ");
String line = inputReader.readLine();
while (line != null) {
System.out.print ("Enter move: ");
out.write(inputReader.readLine());
out.write(" ");
}
out.close();
} catch (IOException e) {
System.out.println (e.getMessage());
}
System.out.println ("Reached here");
}
我试图做的是每当用户想要停止输入,我想要去外面在那里写着“到达此处”的打印行。我想这样做,因为一旦在循环之外,我就可以读取文件,然后拆分输入并对其进行处理。我记得在用C语言编程时,曾经有while(input!= EOF);每当用户输入ctrl + d或ctrl + c时,它会停止它正在做的事情,然后移动到下一行代码中。 我如何在java中做到这一点?
非常感谢。
Control-C将终止您的应用程序 – Dimitar 2011-05-10 00:46:09