2014-04-13 24 views
-4

OKay。我必須實現writeFile方法來打開輸出文件,用「輸入文本:」提示用戶,然後通過鍵盤從用戶讀取輸入,打印輸入到文件,並輸出文件。當用戶自行鍵入停止(大寫或小寫)時,方法應該終止。我使用戶輸入變爲小寫,因此可以靈活。這是我到目前爲止,我不知道我需要什麼接下來寫文件方法

static void writeFile(String outputFile) 
{ 
    try 
     { 
PrintWriter pwOut = new PrintWriter(outputFile); 
Scanner keyboard = new Scanner (System.in); 
System.out.println("Enter Text:"); 
String userinput = keyboard.nextLine(); 

while (true) 
{ 
    if (userinput.toLowerCase().equals("stop")) 
    { 
     pwOut.print(userinput); 
     keyboard.close(); 
     pwOut.close(); 
     break; 
    } 
    else 
    { 
     keyboard.close(); 
     pwOut.close(); 
    } 
+3

你有問題要問? –

+0

這是完整的方法嗎?你爲什麼要關閉你的if語句的兩個子句中的PrintWriter和Scanner對象? – PakkuDon

回答

1

那麼,下次嘗試提出問題。只爲你開始:

static void writeFile(String outputFile) throws FileNotFoundException { 
    Scanner keyboard = new Scanner(System.in); 
    PrintWriter pwOut = new PrintWriter(outputFile); 

    System.out.println("Enter Text:"); 

    while (true) { 
     String userinput = keyboard.nextLine(); 
     if (!userinput.toLowerCase().equals("stop")) { 
      pwOut.print(userinput); 
     } else { 
      break; 
     } 
    } 

    keyboard.close(); 
    pwOut.close(); 
} 
+0

當您將掃描儀和printwriter設置爲空時,這意味着什麼? – user3366866

+0

如果'keyboard'和'pwOut'在'try'裏面,我們就不會在'finally'塊中獲取[[很好的解釋]。](http://en.wikibooks.org/wiki/Java_Programming/範圍)。所以,我必須初始化這些變量來調用close()。 – Doon

+0

我編輯了答案。 – Doon