プロジェクトでは、UTF-8エンコーディングを使用してテキストファイルに追加する必要があります。 は、私の研究の間、私は2つの可能性を発見した:utf8でファイルに追加する
BufferedWriter out = new BufferedWriter(
new OutputStreamWriter(new FileOutputStream("file.txt), "UTF-8")
)
これは、UTF-8で私のファイルに書き込まれますが、それはそれを上書きするのではなく、それがすでに存在する場合、それに追加します。
は、それから私はFileWriter
でパラメータを使用して既存のファイルにapendするコードを発見したが、これは明示的にUTF-8を使用することはありません、というよりも、デフォルトのシステムの文字セットを使用します。私は今
BufferedWriter out = new BufferedWriter(new FileWriter("myfile.txt", true))
をエンコーディングとファイルへの追加の両方を定義する可能性が必要です。システムのエンコーディングに依存するだけで、これはオプションではありません。
どのような考えですか?
この回答を参照してください。https://stackoverflow.com/questions/30307382/how-to-append-text-toを-file-in-java-8-using-specified-charset – diginoise