ファイルへの書き込み
Stringを1行のコードでファイルに書き込む。
コード比較
✕ Java 8
try (FileWriter fw =
new FileWriter("out.txt");
BufferedWriter bw =
new BufferedWriter(fw)) {
bw.write(content);
}
✓ Java 11+
Files.writeString(
Path.of("out.txt"),
content
);
このコードに問題がありますか? お知らせください。
モダンな方法が優れている理由
1行で完結
ライターのラッピングやtry-with-resourcesが不要です。
安全なデフォルト
UTF-8エンコーディングと適切なファイルハンドルのクリーンアップ。
オプション指定可能
追記、作成などのOpenOptionフラグを渡せます。
旧来のアプローチ
FileWriter + BufferedWriter
モダンなアプローチ
Files.writeString()
JDKバージョン
11
難易度
初級
JDKサポート
ファイルへの書き込み
利用可能
JDK 11(2018年9月)以降、広く利用可能
仕組み
Files.writeString()はデフォルトでUTF-8エンコーディングを使用してコンテンツをファイルに書き込みます。追記や作成などのオプションを渡すこともできます。
関連ドキュメント