- すべての実装されたインタフェース:
- Closeable,- Flushable,- Appendable,- AutoCloseable
- 直系の既知のサブクラス:
- FileWriter
charsetを使用してバイトにエンコードされます。 使用する文字セットは、名前で指定することも、明示的に指定することも、デフォルトの文字セットを受け入れることもできます。 
 write()メソッドを呼び出すたびに、指定された文字に対してエンコーディング・コンバータが呼び出されます。 結果として得られるバイトは、バッファに蓄積されてからベースとなる出力ストリームに書き込まれます。 write()メソッドに渡される文字はバッファに入らないので注意してください。
最大限に効率化するには、コンバータを頻繁に呼び出さないようにするためにBufferedWriterの内部にOutputStreamWriterをラップすることを考慮してください。 次に例を示します。
Writer out = new BufferedWriter(new OutputStreamWriter(anOutputStream));
 「サロゲート・ペア」は、2つのchar値によって表される文字です。\uD800から\uDBFFの「上位」サロゲートと、それに続く\uDC00から\uDFFFの「下位」サロゲートで構成されます。
 
対応する下位サロゲートがない上位サロゲート、または対応する上位サロゲートがない下位サロゲートは、「不正なサロゲート要素」と呼ばれます。
このクラスは、不正なサロゲート要素やマップ不可文字シーケンスを、常に文字セットのデフォルトの代替シーケンスで置き換えます。 エンコード処理をより強力に制御する必要がある場合は、CharsetEncoderクラスを使用してください。
- 導入されたバージョン:
- 1.1
- 関連項目:
- 
フィールドのサマリー
- 
コンストラクタのサマリーコンストラクタコンストラクタ説明デフォルトの文字エンコーディングを使用するOutputStreamWriterを作成します。outはPrintStreamで、印刷ストリームで使用される文字セットです。OutputStreamWriter(OutputStream out, String charsetName) 指定された文字セットを使うOutputStreamWriterを作成します。OutputStreamWriter(OutputStream out, Charset cs) 与えられた文字セットを使うOutputStreamWriterを作成します。OutputStreamWriter(OutputStream out, CharsetEncoder enc) 与えられた文字セット・エンコーダを使うOutputStreamWriterを作成します。
- 
メソッドのサマリー
- 
コンストラクタの詳細- 
OutputStreamWriterpublic OutputStreamWriter(OutputStream out, String charsetName) throws UnsupportedEncodingException 指定された文字セットを使うOutputStreamWriterを作成します。- パラメータ:
- out- OutputStream
- charsetName- サポートされている- charsetの名前
- 例外:
- UnsupportedEncodingException- 指定されたエンコーディングがサポートされていない場合
 
- 
OutputStreamWriterpublic OutputStreamWriter(OutputStream out) デフォルトの文字エンコーディングを使用するOutputStreamWriterを作成します。outはPrintStreamで、印刷ストリームで使用される文字セットです。- パラメータ:
- out- OutputStream
- 関連項目:
 
- 
OutputStreamWriterpublic OutputStreamWriter(OutputStream out, Charset cs) 与えられた文字セットを使うOutputStreamWriterを作成します。- パラメータ:
- out- OutputStream
- cs- charset
- 導入されたバージョン:
- 1.4
 
- 
OutputStreamWriterpublic OutputStreamWriter(OutputStream out, CharsetEncoder enc) 与えられた文字セット・エンコーダを使うOutputStreamWriterを作成します。- パラメータ:
- out- OutputStream
- enc- 文字セット・エンコーダ
- 導入されたバージョン:
- 1.4
 
 
- 
- 
メソッドの詳細- 
getEncodingpublic String getEncoding()このストリームで使用される文字エンコーディングの名前を返します。エンコーディングに互換名がある場合は、その名前を返します。互換名がない場合は、エンコーディングの正規名を返します。 このインスタンスが OutputStreamWriter(OutputStream, String)コンストラクタを使用して作成された場合、返される名前はエンコーディングに対して一意となり、そのコンストラクタに渡された名前とは異なることがあります。 ストリームが閉じられた場合、このメソッドはnullを返すことがあります。- 戻り値:
- このエンコーディングの互換名。ストリームが閉じている場合はnull
- 関連項目:
 
- 
writepublic void write(int c) throws IOException 単一の文字を書き込みます。- オーバーライド:
- write、クラス:- Writer
- パラメータ:
- c- 書き込まれる文字を指定するint
- 例外:
- IOException- 入出力エラーが発生した場合
 
- 
writepublic void write(char[] cbuf, int off, int len) throws IOException 文字の配列の一部を書き込みます。- 定義:
- write、クラス:- Writer
- パラメータ:
- cbuf- 文字のバッファ
- off- 文字の書込み開始オフセット
- len- 書き込む文字数
- 例外:
- IndexOutOfBoundsException-- offが負の場合、または- lenが負の場合、または- off + lenが負の場合、または指定された配列の長さより大きい場合
- IOException- 入出力エラーが発生した場合
 
- 
writepublic void write(String str, int off, int len) throws IOException 文字列の一部を書き込みます。- オーバーライド:
- write、クラス:- Writer
- パラメータ:
- str- 文字列
- off- 文字の書込み開始オフセット
- len- 書き込む文字数
- 例外:
- IndexOutOfBoundsException-- offが負の場合、- lenが負の場合、または- off + lenが負であるか、指定された文字列の長さよりも大きい場合
- IOException- 入出力エラーが発生した場合
 
- 
flushpublic void flush() throws IOExceptionストリームをフラッシュします。- 定義:
- flush、インタフェース:- Flushable
- 定義:
- flush、クラス:- Writer
- 例外:
- IOException- 入出力エラーが発生した場合
 
- 
closepublic void close() throws IOException次のクラスからコピーされた説明:Writerストリームを最初にフラッシュして、閉じます。 ストリームが閉じられたあとにwrite()またはflush()を呼び出すと、IOExceptionがスローされます。 すでに閉じられているストリームを閉じても、何の影響もありません。- 定義:
- close、インタフェース:- AutoCloseable
- 定義:
- close、インタフェース:- Closeable
- 定義:
- close、クラス:- Writer
- 例外:
- IOException- 入出力エラーが発生した場合
 
 
-