- すべての実装されたインタフェース:
 Closeable,Flushable,Appendable,AutoCloseable
- 直系の既知のサブクラス:
 BufferedWriter,CharArrayWriter,FilterWriter,OutputStreamWriter,PipedWriter,PrintWriter,StringWriter
- 導入されたバージョン:
 - 1.1
 - 関連項目:
 
- 
フィールドのサマリー
フィールド - 
コンストラクタのサマリー
コンストラクタ - 
メソッドのサマリー
修飾子と型メソッド説明append(char c) 指定された文字をこのライターに追加します。append(CharSequence csq) 指定された文字シーケンスをこのライターに追加します。append(CharSequence csq, int start, int end) 指定された文字シーケンスのサブシーケンスをこのライターに追加します。abstract voidclose()ストリームを最初にフラッシュして、閉じます。abstract voidflush()ストリームをフラッシュします。static Writerすべての文字を破棄する新規Writerを返します。voidwrite(char[] cbuf) 文字の配列を書き込みます。abstract voidwrite(char[] cbuf, int off, int len) 文字の配列の一部を書き込みます。voidwrite(int c) 単一の文字を書き込みます。void文字列を書き込みます。void文字列の一部を書き込みます。 
- 
フィールド詳細
- 
lock
protected Object lockこのストリームに対する処理の同期に使用するオブジェクトです。 効率を良くするため、文字ストリーム・オブジェクトは、ほかのオブジェクトを使ってクリティカル・セクションを保護することができます。 したがって、サブクラスは、thisまたは同期されたメソッドではなく、このフィールドのオブジェクトを使用する必要があります。 
 - 
 - 
コンストラクタの詳細
- 
Writer
protected Writer()ライター自体でクリティカル・セクションが同期する文字ストリーム・ライターを新しく作成します。 - 
Writer
protected Writer(Object lock) 指定されたオブジェクトでクリティカル・セクションが同期する文字ストリーム・ライターを新しく作成します。- パラメータ:
 lock- 同期するオブジェクト
 
 - 
 - 
メソッドの詳細
- 
nullWriter
public static Writer nullWriter()すべての文字を破棄する新規Writerを返します。 返されるストリームは、最初はオープンしています。 ストリームを閉じるには、close()メソッドを呼び出します。 後からclose()をコールしても効果はありません。ストリームがオープンしている間、
append(char)、append(CharSequence)、append(CharSequence, int, int)、flush()、write(int)、write(char[])およびwrite(char[], int, int)の各メソッドでは何も実行されません。 ストリームが閉じられると、これらのメソッドはすべてIOExceptionをスローします。返された
Writerに対する操作の同期に使用されるobjectは指定されていません。- 戻り値:
 - すべての文字を破棄する
Writer - 導入されたバージョン:
 - 11
 
 - 
write
public void write(int c) throws IOException 単一の文字を書き込みます。 書き込まれる文字は、指定された整数値の下位16ビットに格納されます。上位16ビットは無視されます。有効な単一文字の出力をサポートするためのサブクラスでは、このメソッドをオーバーライドします。
- パラメータ:
 c- 書き込まれる文字を指定するint- 例外:
 IOException- 入出力エラーが発生した場合
 - 
write
public void write(char[] cbuf) throws IOException 文字の配列を書き込みます。- パラメータ:
 cbuf- 書き込まれる文字の配列- 例外:
 IOException- 入出力エラーが発生した場合
 - 
write
public abstract void write(char[] cbuf, int off, int len) throws IOException 文字の配列の一部を書き込みます。- パラメータ:
 cbuf- 文字の配列off- 文字の書込み開始オフセットlen- 書き込む文字数- 例外:
 IndexOutOfBoundsException-offが負の場合、またはlenが負の場合、またはoff + lenが負の場合、または指定された配列の長さより大きい場合は、この例外がスローされます。IOException- 入出力エラーが発生した場合
 - 
write
public void write(String str) throws IOException 文字列を書き込みます。- パラメータ:
 str- 書き込まれる文字列- 例外:
 IOException- 入出力エラーが発生した場合
 - 
write
public void write(String str, int off, int len) throws IOException 文字列の一部を書き込みます。- 実装要件:
 - このクラスの実装は、指定された条件の
IndexOutOfBoundsExceptionをスローします。メソッドをオーバーライドすることで別の方法が選択される可能性があります。 - パラメータ:
 str- 文字列off- 文字の書込み開始オフセットlen- 書き込む文字数- 例外:
 IndexOutOfBoundsException-offが負の場合、またはlenが負の場合、またはoff + lenが負の場合、または指定された文字列の長さより大きい場合は、この例外がスローされます。IOException- 入出力エラーが発生した場合
 - 
append
public Writer append(CharSequence csq) throws IOException 指定された文字シーケンスをこのライターに追加します。out.append(csq)形式のこのメソッドの起動は、起動とまったく同じように動作out.write(csq.toString())文字シーケンス
csqのtoStringの指定によっては、シーケンス全体が追加されない場合があります。 たとえば、文字バッファのtoStringメソッドを呼び出すと、内容がバッファの位置と制限によって異なる部分列が返されます。- 定義:
 append、インタフェースAppendable- パラメータ:
 csq- 追加するcharシーケンス。csqがnullの場合、このライターに4文字の"null"が追加されます。- 戻り値:
 - このライター
 - 例外:
 IOException- 入出力エラーが発生した場合- 導入されたバージョン:
 - 1.5
 
 - 
append
public Writer append(CharSequence csq, int start, int end) throws IOException 指定された文字シーケンスのサブシーケンスをこのライターに追加します。Appendable。csqがnullでない場合のout.append(csq, start, end)形式のこのメソッドの呼出しは、起動とまったく同じように動作out.write(csq.subSequence(start, end).toString())- 定義:
 append、インタフェースAppendable- パラメータ:
 csq- サブシーケンスの追加元のcharシーケンス。csqがnullの場合、csqに4文字の"null"が含まれているかのように、文字が追加されます。start- サブシーケンスの最初のcharのインデックスend- サブシーケンスの最後のcharのあとに続くcharのインデックス- 戻り値:
 - このライター
 - 例外:
 IndexOutOfBoundsException-startまたはendが負の場合、startがendより大きいか、endがcsq.length()より大きいですIOException- 入出力エラーが発生した場合- 導入されたバージョン:
 - 1.5
 
 - 
append
public Writer append(char c) throws IOException 指定された文字をこのライターに追加します。out.append(c)形式のこのメソッドの起動は、起動とまったく同じように動作out.write(c)- 定義:
 append、インタフェースAppendable- パラメータ:
 c- 追加する16ビット文字- 戻り値:
 - このライター
 - 例外:
 IOException- 入出力エラーが発生した場合- 導入されたバージョン:
 - 1.5
 
 - 
flush
public abstract void flush() throws IOExceptionストリームをフラッシュします。 ストリームが各種のwrite()メソッドにより書き込まれた文字をバッファに保存してある場合は、これらの文字の目的の転送先にただちに文字を書き込みます。 さらに、転送先が別の文字ストリームまたはバイト・ストリームの場合は、この送信先をフラッシュします。 つまり、1つのflush()の呼出しで、関連するWriterおよびOutputStreamのすべてのバッファをフラッシュします。このストリームの目的の転送先が、ベースとなるオペレーティング・システムによって提供される抽象化オブジェクト(ファイルなど)である場合、ストリームをフラッシュすることで、それまでにストリームに書き込まれたバイトがオペレーティング・システムに渡されて書き込まれることは保証されますが、ディスク・ドライブなどの物理デバイスに実際に書き込まれることは保証されません。
- 定義:
 flush、インタフェースFlushable- 例外:
 IOException- 入出力エラーが発生した場合
 - 
close
public abstract void close() throws IOExceptionストリームを最初にフラッシュして、閉じます。 ストリームが閉じられたあとにwrite()またはflush()を呼び出すと、IOExceptionがスローされます。 すでに閉じられているストリームを閉じても、何の影響もありません。- 定義:
 close、インタフェースAutoCloseable- 定義:
 close、インタフェースCloseable- 例外:
 IOException- 入出力エラーが発生した場合
 
 -