2016-04-10 16 views
0

ユーザーからの文字列を読み込んで出力ファイルに書き込むプログラムを作成し、ユーザーが「完了」を入力すると処理を停止するはずです。これは私が持っているものすべてであり、私は完全に立ち往生しています。どんな助けでも大歓迎です!ここでJava Scannerを使用してユーザー入力を.txtファイルに書き込む

import java.util.Scanner; 
import java.io.*; 

public class Parrish_A04Q3 
{ 
    public static void main(String [] args) throws IOException 
    { 
     String file = "userStrings.txt"; 

     Scanner scan = new Scanner(System.in); 

     FileWriter fw = new FileWriter(file); 
     BufferedWriter bw = new BufferedWriter(fw); 
     PrintWriter outFile = new PrintWriter(bw); 
    } 
} 

答えて

0

あなたが入力から読み込み、ファイルにそれを記述する必要があります。

最初のポイントは、入力と条件を読み取って終了するためのループが必要です。行を読むと、出力ファイルに書き込むことができます。

String file = "userStrings.txt"; 
    Scanner scan = new Scanner(System.in); 
    scan.useDelimiter("\\n"); 
    System.out.println("Enter DONE to terminate"); 
    try (PrintWriter fw = new PrintWriter(new File(file))) { 
     String line = null; 
     while ((line = scan.nextLine()) != null) { 
      if (line.trim().equalsIgnoreCase("done")) { 
       System.out.println("Exiing"); 
       System.exit(0); 
      } 
     } 
     fw.println(line); 
    } catch (FileNotFoundException ex) { 
     Logger.getLogger(MaxByTest.class.getName()).log(Level.SEVERE, null, ex); 
    } 
1

あなたが行く:

String file = "userStrings.txt"; 

Scanner scan = new Scanner(System.in); 

FileWriter fw = new FileWriter(file); 
while(true){ 
    String input = scan.nextLine(); 
    if("DONE".equalsIgnoreCase(input.trim())){ 
     break; 
    } 
    fw.write(input); 
} 
scan.close(); 
fw.close(); 
関連する問題