読者です 読者をやめる 読者になる 読者になる

PrintStream

PrintStreamは、指定された他の出力ストリームにさまざまなデータの出力機能を付加するクラス・・・。

PrintStream (Java Platform SE 6)

System.outはこのクラスのフィールドオブジェクトなので、このクラスをまず使ってみよう・・・。

今回はPrintStreamとは別に、ファイル(バイナリ)出力をするFileOutputStreamと、ファイルが見つからなかったときの例外FileNotFoundExceptionを用意する・・・。
FileOutputStreamは、printlnみたいな単純な出力機能というか関数を持ってないので、PrintStreamを使うことでその機能を付加する・・・。

outをnullで初期化・・・。

ファイルの例外を考えて、tryで囲む・・・。
FileOutputStreamで"test.txt"を開いて、そのインスタンスをそのままPrintStreamのコンストラクタに渡し、できたインスタンスをoutに格納・・・。
これでoutは"test.txt"への出力ストリームオブジェクトになる・・・。

PrintStreamのprintlnメソッドで123と"ABC"を出力・・・。

ファイルが見つからないときは、catchのFileNotFoundExceptionのところに来るので、エラー処理・・・。エラーメッセージ出すだけだけど・・・。

finallyってやったっけ?
エラーが起きようが起きまいが、outストリームを閉じる・・・。

f:id:BG1:20150926114106p:plain

この状態で実行すると、

f:id:BG1:20150926114125p:plain

何も起きてないように見えて、"test.txt"ができている・・・。

f:id:BG1:20150926114204p:plain

中に123と"ABC"が出力されている・・・。
つまり、PrintStreamオブジェクトoutが"test.txt"に123と"ABC"を出力したということがわかる・・・。

Sample/MainClass.java at master · bg1bgst333/Sample · GitHub