0

あるファイルから入力を読み取るプログラムを作成しています。プログラムはデータをフォーマットして別のファイルに書き込みます。

入力ファイル:

Christopher kardaras、10 N Brainard、Naperville、IL、60566 George Washington、30 W Jackson、シカゴ、IL、60060

出力ファイル:

Christopher kardaras 10 N Brainard Naperville, IL 60566

ジョージ ワシントン 30 W ジャクソン シカゴ、イリノイ州 60060

コードを実行すると、出力ファイルに出力が表示されません。以下は私のコードです。

    //open input, output files
    FileReader freader = new FileReader("AddressData.txt");
    BufferedReader inFile = new BufferedReader(freader);

    FileWriter fwriter=new FileWriter("FormattedData.text");
    PrintWriter outFile= new PrintWriter (fwriter);

    //process data - get a line, separate into fields, then print
    //address label to the output file

    line= inFile.readLine();
    while (line != null)
    {
        //Create a new scanner, use comma as field separator
        Scanner s = new Scanner(line).useDelimiter(",");

        // SOME CODE OMITTED HERE FOR BREVITY
        out.printf(...);

        //get the next line. read failure (EOF) will exit the loop
        line = inFile.readLine();
    }

    //clean up
    inFile.close();
    outFile.close();
4

1 に答える 1

1

閉じる前に outFile をフラッシュしてみてください。

outFile.flush();

それを処理する別の PrintWriter コンストラクターを使用することもできます。

public PrintWriter(OutputStream out, boolean autoFlush)
于 2012-10-20T17:56:38.180 に答える