Java プラットフォーム 1.2

java.io
クラス OutputStreamWriter

java.lang.Object
  |
  +--java.io.Writer
        |
        +--java.io.OutputStreamWriter
直接の既知のサブクラス:
FileWriter

public class OutputStreamWriter
extends Writer

出力ストリームに文字を書き込んで、指定されたエンコーディングに従って文字を変換します。各 OutputStreamWriter では、それ自身の CharToByteConverter を組み込んで、文字ストリームとバイトストリームの橋渡しの役目を持ちます。

OutputStreamWriter で使用するエンコーディングは、名前、CharToByteConverter の提供、またはシステムプロパティ file.encoding で定義するデフォルトのエンコーディングの受け入れにより指定されます。

write() メソッドを呼び出すたびに、指定された文字に対してエンコーディングコンバータが呼び出されます。結果として生成されたバイトは、バッファに蓄積されてから基礎の出力ストリームに書き込まれます。このバッファのサイズは指定できますが、ほとんどの場合、デフォルトのサイズで十分です。write() メソッドに渡される文字はバッファに入らないので注意してください。効率を最高にするには、コンバータを頻繁に呼び出さないように、BufferedWriter の内部に OutputStreamWriter をラップすることを考慮してください。次に例を示します。

 Writer out
   = new BufferedWriter(new OutputStreamWriter(System.out));

導入されたバージョン:
JDK1.1
関連項目:
BufferedWriter, OutputStream

クラス java.io.Writer から継承したフィールド
lock
 
コンストラクタの概要
OutputStreamWriter(OutputStream out)
          デフォルトの文字エンコーディングを使う OutputStreamWriter を作成します。
OutputStreamWriter(OutputStream out, String enc)
          指定された文字エンコーディングを使う OutputStreamWriter を作成します。
 
メソッドの概要
 void close()
          ストリームを閉じます。
 void flush()
          ストリームをフラッシュします。
 String getEncoding()
          このストリームによって使用されている文字エンコーディングの標準名を返します。
 void write(char[] cbuf, int off, int len)
          文字の配列の一部を書き込みます。
 void write(int c)
          単一の文字を書き込みます。
 void write(String str, int off, int len)
          文字列の一部を書き込みます。
 
クラス java.io.Writer から継承したメソッド
write, write
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

OutputStreamWriter

public OutputStreamWriter(OutputStream out,
                          String enc)
                   throws UnsupportedEncodingException
指定された文字エンコーディングを使う OutputStreamWriter を作成します。
パラメータ:
out - OutputStream
enc - 使用するエンコーディングの名前
例外:
UnsupportedEncodingException - 指定されたエンコーディングがサポートされていない場合

OutputStreamWriter

public OutputStreamWriter(OutputStream out)
デフォルトの文字エンコーディングを使う OutputStreamWriter を作成します。
パラメータ:
out - OutputStream
メソッドの詳細

getEncoding

public String getEncoding()
このストリームによって使用されている文字エンコーディングの標準名を返します。この OutputStreamWriterOutputStreamWriter(OutputStream, String) コンストラクタで作成された場合、返されるエンコーディング名 (標準名) はコンストラクタに渡されたエンコーディング名と異なることがあります。ストリームが閉じている場合は null が返されることがあります。

write

public void write(int c)
           throws IOException
単一の文字を書き込みます。
例外:
IOException - 入出力エラーが発生した場合
オーバーライド:
クラス Writer 内の write

write

public void write(char[] cbuf,
                  int off,
                  int len)
           throws IOException
文字の配列の一部を書き込みます。
パラメータ:
cbuf - 文字のバッファ
off - 文字の書き込み開始オフセット
len - 書き込む文字数
例外:
IOException - 入出力エラーが発生した場合
オーバーライド:
クラス Writer 内の write

write

public void write(String str,
                  int off,
                  int len)
           throws IOException
文字列の一部を書き込みます。
パラメータ:
str - 文字列
off - 文字の書き込み開始オフセット
len - 書き込む文字数
例外:
IOException - 入出力エラーが発生した場合
オーバーライド:
クラス Writer 内の write

flush

public void flush()
           throws IOException
ストリームをフラッシュします。
例外:
IOException - 入出力エラーが発生した場合
オーバーライド:
クラス Writer 内の flush

close

public void close()
           throws IOException
ストリームを閉じます。
例外:
IOException - 入出力エラーが発生した場合
オーバーライド:
クラス Writer 内の close

Java プラットフォーム 1.2

バグや機能要求の報告
新しい javadoc の表示についてのコメントやご提案
Java は、米国およびその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-1998 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.