我正試圖實現棋盤遊戲的用戶輸入界面。我試圖一次獲得一個用戶輸入,然後將其寫入一個文件(因爲我需要保存用戶所做的動作列表)。到目前爲止,我的工作很好(讀取輸入並將其寫入文件),但是,只要用戶想要停止輸入,程序就會停止工作。即;當你按下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