Open1

Javaで文字コードを指定してファイルに書き込む

mIO1000mIO1000

毎回毎回間違えるので、自分用メモ。

○○Writer

文字単位でデータを扱う

FileWriter

ファイルへの書き込みを終端とする文字ストリーム。

OutputStreamWriter

バイトストリームと文字ストリームの変換を行うストリーム。
文字ストリーム→バイトストリームへの変換。
文字コード指定ができるのはこのクラス。

○○OutputStream

バイト単位でデータを扱う

FileOutputStream

ファイルへの書き込みを終端とするバイトストリーム

つまり……?

実装:FileOutputStreamを、文字コードを指定したOutputStreamWriterに渡し、writeする。
=write()に渡された文字列を、文字→バイトに変換し、FileOutputStreamを通じてファイルに書き込む。

参考

https://zenn.dev/kawakawaryuryu/articles/8924849b88590cda4e22