web-dev-qa-db-ja.com

Java 8で指定した文字セットを使用してファイルにテキストを追加する方法

Java 8指定されたCharset csを使用して8にある既存のファイルにテキストを追加する簡単で保存可能なソリューションを探しています。私が見つけたソリューション here =私の状況ではノーゴーである標準のCharsetを扱います。

オーバーロードされたバージョンの Files.writeがCharsetを受け入れる)を使用する1つの方法

import static Java.nio.charset.StandardCharsets.UTF_8;
import static Java.nio.file.StandardOpenOption.APPEND;
import static Java.nio.file.StandardOpenOption.CREATE;

List<String> lines = ...;
Files.write(log, lines, UTF_8, APPEND, CREATE);
20
assylias
Path path = Paths.get("...");
Charset charset = StandardCharsets.UTF_8;
List<String> list = Collections.singletonList("...");
Files.write(path, charset, list, StandardOpenOption.APPEND);
8
Joop Eggen

あなたが指摘した質問で受け入れられた回答に基づいて:

try (PrintWriter out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(new FileOutputStream("myfile.txt", true), charset)))) {
    out.println("the text");
} catch (IOException e) {
    //exception handling left as an exercise for the reader
}
3

Guavaのappendメソッド Class Files を使用できます。また、 Java.nio.charset.Charset を確認することもできます。

0
Mihai8