【Java】ファイルを作成せずにOutputStreamWriterを使う方法

java

ファイルは作成できない!という状況で、OutputStreamWriterを使う方法を紹介します。

具体的な方法ですがByteArrayOutputStreamを使えばファイルを作らず、メモリ上に情報を保持するだけのOutputStreaができるのでそれを使ってOutputStreamWriterを使っていきます。

[スポンサーリンク]

このページでやること

Fileの代わりにByteArrayOutputStreamを使って、OutputStreamWriterを使う方法を紹介します。

ByteArrayOutputStreamの使い方

OutputStreamWriterへ書き込んだ文字を表示するときには、ByteArrayOutputStream.toString()とするよう気をつけてください。8行目参照

public static void main( String[] args ) throws IOException
{
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    OutputStreamWriter osw = new OutputStreamWriter(baos, "UTF-8");
    osw.write("あいうえお");
    osw.flush();
    osw.close();
    System.out.println( baos.toString() );
}
>実行結果
あいうえお

さいごに

普段こういう使い方ってあまりしないとは思うのですが、外部ライブラリを使っていると強制的にOutputStreamWriterを使わざるをえない状況になってりすることもあります。

そんなとき、もしファイル作成が不要なようでしたらByteArrayOutputStreamの使用も考えてみてください。余分なファイルを作ることなく使えるので便利ですよ。

それでは!