|
Java プラットフォーム 1.2 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object | +--java.io.Writer | +--java.io.BufferedWriter
文字をバッファリングすることによって、文字、配列、または文字列を効率良く文字型出力ストリームに書き込みます。
バッファのサイズは、デフォルト値のままにすることも、特定の値を指定することもできます。デフォルト値は、通常の使い方では十分な大きさです。
行区切り文字はプラットフォームに依存するため、システムの line.separator プロパティで定義される終端記号を書き込む newLine() メソッドが提供されています。すべてのプラットフォームが改行文字 ('¥n') で行を終端させるわけではないので、改行文字を直接書き込むよりも、このメソッドを呼び出して行を終了させることをお勧めします。
一般的に、Writer は、その出力をただちに基礎の文字型ストリームまたはバイトストリームに送信します。プロンプト出力を必要とする場合以外では、FileWriter や OutputStreamWriter のような Writer から直接 write() オペレーションを呼び出すのは効率が悪いので、BufferedWriter でラップすることをお勧めします。たとえば、次の例は PrintWriter のファイルへの出力をバッファリングします。
PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter("foo.out")));バッファリングしない場合は、print() メソッドを呼び出すたびに文字をバイトに変換してただちにファイルに書き込むので、効率が非常に悪くなります。
PrintWriter
,
FileWriter
,
OutputStreamWriter
クラス java.io.Writer から継承したフィールド |
lock |
コンストラクタの概要 | |
BufferedWriter(Writer out)
デフォルトサイズの出力バッファでバッファリングされた、文字型出力ストリームを作成します。 |
|
BufferedWriter(Writer out,
int sz)
指定されたサイズの出力バッファでバッファリングされた、文字型出力ストリームを新しく作成します。 |
メソッドの概要 | |
void |
close()
ストリームを閉じます。 |
void |
flush()
ストリームをフラッシュします。 |
void |
newLine()
行区切り文字を書き込みます。 |
void |
write(char[] cbuf,
int off,
int len)
文字型配列の一部を書き込みます 通常このメソッドは、指定された配列からこのストリームのバッファへ文字を格納し、必要に応じて基礎のストリームにバッファをフラッシュします。 |
void |
write(int c)
単一の文字を書き込みます。 |
void |
write(String s,
int off,
int len)
String の一部を書き込みます。 |
クラス java.io.Writer から継承したメソッド |
write,
write |
クラス java.lang.Object から継承したメソッド |
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
コンストラクタの詳細 |
public BufferedWriter(Writer out)
out
- Writerpublic BufferedWriter(Writer out, int sz)
out
- Writersz
- 出力バッファのサイズ。正の整数メソッドの詳細 |
public void write(int c) throws IOException
public void write(char[] cbuf, int off, int len) throws IOException
通常このメソッドは、指定された配列からこのストリームのバッファへ文字を格納し、必要に応じて基礎のストリームにバッファをフラッシュします。しかし、要求された長さがこのストリームのバッファと同じ位の大きさの場合、このメソッドはバッファをフラッシュし、その文字を直接基礎のストリームに書き込みます。こうして、余分な BufferedWriter
は、データを不必要にコピーしません。
cbuf
- 文字型配列off
- 文字の読み込み開始オフセットlen
- 書き込む文字数public void write(String s, int off, int len) throws IOException
s
- 書き込む Stringoff
- 文字の読み込み開始オフセットlen
- 書き込む文字数public void newLine() throws IOException
public void flush() throws IOException
public void close() throws IOException
|
Java プラットフォーム 1.2 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |