4

Java Swing に 1 つの JTextArea と送信ボタンがあります。textarea の内容を改行付きのファイルに書き込む必要があります。出力は、ファイルに1つの文字列として書き込まれます。

try {
    BufferedWriter fileOut = new BufferedWriter(new FileWriter("filename.txt")); 
    String myString1 =jTextArea1.getText();
    String myString2 = myString1.replace("\r", "\n");

    System.out.println(myString2);

    fileOut.write(myString2);
    fileOut.close();
} catch (IOException ioe) {
    ioe.printStackTrace();
}

私にいくつかの提案をしてください

4

4 に答える 4

18

JTextAreaの組み込みwrite関数を使用しないのはなぜですか?

JTextArea area = ...
try (BufferedWriter fileOut = new BufferedWriter(new FileWriter(yourFile))) {
    area.write(fileOut);
}
于 2012-05-09T18:41:04.007 に答える
2

すべての \r と \n を次のように置き換えます。

System.getProperty("line.separator")

これにより、コードがプラットフォーム非依存になり、必要に応じてファイルに新しい行が書き込まれます。

編集: BufferedWriter を使用しているため、newLine() メソッドを使用することもできます

于 2012-05-09T18:37:34.527 に答える
0

なぜに置き換え\rたの\nですか?

行区切りは"\r\n".

于 2012-05-09T18:43:10.737 に答える