Chapter12 Stream and Files
ストリームの基本は以下の4つ。
- InputStream
- OutputStream
- Reader
- Writer
バイトを扱うのはInputStreamとOutputStreamで、Unicodeを扱うのはReaderとWriter。
ストリームの種類別に子クラスがある。なんと60種類以上。
読み書きは、readメソッド、writeメソッドで行う。
テキストの出力
テキストの出力は、PrintWriterを使うと楽にできる。
PrintWriterはそのままでは使えなくて、WriterかOutputStreamと組み合わせて使う。
- new PrintWriter(new FileWriter("employee.txt"));
- new PrintWriter(new FileOutputStream("employee.txt"));
PrintWriter(OutputStream)の場合、Unicodeとバイトの変換にOutputStreamWriterを使ってる。
読み書きは、printメソッド、printlnメソッドで行う。
AutoFlushをONにすると、println、printf、formatを使ったときに自動でフラッシュされるので便利。
例外を出力しないので、何か問題がおきたときはcheckErrorメソッドを使って確認する。
テキストの入力
テキストの入力は、BufferedReaderを使うと楽にできる。
BufferedReaderはそのままでは使えなくて、Reader(入力ソース)と組み合わせる必要がある。
- new BufferedReader(new FileReader("employee.txt"));
読み書きは、readLineメソッドで行う。nullを返すと読み込み終了。
数値を読み込むときは、先にStringで入力して、次にNumber型に変換する必要があるけど、StringTokenizerを使うと便利になる。
(つづく)