java.lang.Object
java.io.Reader
java.io.PipedReader
- すべての実装されたインタフェース:
Closeable
,AutoCloseable
,Readable
public class PipedReader extends Reader
パイプによる文字入力ストリームです。
- 導入されたバージョン:
- 1.1
-
フィールドのサマリー
-
コンストラクタのサマリー
コンストラクタ コンストラクタ 説明 PipedReader()
PipedReader
を、まだ接続されないように作成します。PipedReader(int pipeSize)
PipedReader
を、まだconnected
ではない状態で作成します。その際、指定されたパイプ・サイズをパイプのバッファに使用します。PipedReader(PipedWriter src)
PipedReader
を、パイプで連結されたライターsrc
に接続されるように作成します。PipedReader(PipedWriter src, int pipeSize)
PipedReader
を、パイプで連結されたライターsrc
に接続されるように作成します。その際、指定されたパイプ・サイズをパイプのバッファに使用します。 -
メソッドのサマリー
修飾子と型 メソッド 説明 void
close()
パイプによるストリームを閉じて、それに関連するすべてのシステム・リソースを解放します。void
connect(PipedWriter src)
このパイプで連結されたリーダーをパイプで連結されたライターsrc
に接続します。int
read()
パイプで連結されたストリームからデータの次の文字を読み込みます。int
read(char[] cbuf, int off, int len)
最大len
文字のデータを、このパイプで連結されたストリームから文字配列に読み込みます。boolean
ready()
このストリームが読込み可能かどうかを判定します。クラス java.io.Readerで宣言されたメソッド
mark, markSupported, nullReader, read, read, reset, skip, transferTo
-
コンストラクタの詳細
-
PipedReader
public PipedReader(PipedWriter src) throws IOExceptionPipedReader
を、パイプで連結されたライターsrc
に接続されるように作成します。src
に書き込まれたデータは、このストリームからの入力として使えるようになります。- パラメータ:
src
- 接続先のストリーム。- 例外:
IOException
- 入出力エラーが発生した場合。
-
PipedReader
public PipedReader(PipedWriter src, int pipeSize) throws IOExceptionPipedReader
を、パイプで連結されたライターsrc
に接続されるように作成します。その際、指定されたパイプ・サイズをパイプのバッファに使用します。src
に書き込まれたデータは、このストリームからの入力として使えるようになります。- パラメータ:
src
- 接続先のストリーム。pipeSize
- パイプのバッファのサイズ。- 例外:
IOException
- 入出力エラーが発生した場合。IllegalArgumentException
-pipeSize <= 0
の場合。- 導入されたバージョン:
- 1.6
-
PipedReader
public PipedReader() -
PipedReader
public PipedReader(int pipeSize)PipedReader
を、まだconnected
ではない状態で作成します。その際、指定されたパイプ・サイズをパイプのバッファに使用します。 使用前に、それをPipedWriter
に接続する必要があります。- パラメータ:
pipeSize
- パイプのバッファのサイズ。- 例外:
IllegalArgumentException
-pipeSize <= 0
の場合。- 導入されたバージョン:
- 1.6
-
-
メソッドの詳細
-
connect
public void connect(PipedWriter src) throws IOExceptionこのパイプで連結されたリーダーをパイプで連結されたライターsrc
に接続します。 このオブジェクトが別のパイプで連結されたライターにすでに接続されている場合は、IOException
がスローされます。src
がパイプによる未接続のライターで、snk
がパイプによる未接続のリーダーである場合、それらは以下の呼出しのどちらかによって接続されます。snk.connect(src)
または
src.connect(snk)
2つの呼出しは同じ効果を持ちます。
- パラメータ:
src
- パイプによる接続先のライター。- 例外:
IOException
- 入出力エラーが発生した場合。
-
read
public int read() throws IOExceptionパイプで連結されたストリームからデータの次の文字を読み込みます。 ストリームの終わりに達したために読み込む文字がない場合は、値-1
が返されます。 入力データが読み込めるようになるか、ストリームの終わりが検出されるか、または例外が発生するまで、このメソッドはブロックされます。- オーバーライド:
read
、クラス:Reader
- 戻り値:
- データの次の文字。ストリームの終わりに達した場合は
-1
。 - 例外:
IOException
- パイプがbroken
の状態である場合、unconnected
の状態である場合、閉じられている場合、または入出力エラーが発生した場合。
-
read
public int read(char[] cbuf, int off, int len) throws IOException最大len
文字のデータを、このパイプで連結されたストリームから文字配列に読み込みます。 データ・ストリームの終わりに達した場合、またはlen
バイトがパイプのバッファ・サイズを超えている場合、len
文字より少ないデータが読み込まれます。 このメソッドは、少なくとも1文字の入力を利用できるまでブロックします。- 定義:
read
、クラス:Reader
- パラメータ:
cbuf
- データの読込み先のバッファ。off
- データの開始オフセット。len
- 読み込まれる最大文字数。- 戻り値:
- バッファに読み込まれた文字の合計数。ストリームの終わりに達してデータがない場合は
-1
。 - 例外:
IOException
- パイプがbroken
の状態である場合、unconnected
の状態である場合、閉じられている場合、または入出力エラーが発生した場合。IndexOutOfBoundsException
-off
が負の場合、またはlen
が負の場合、またはlen
がcbuf.length - off
より大きい場合
-
ready
public boolean ready() throws IOExceptionこのストリームが読込み可能かどうかを判定します。 パイプで連結された文字ストリームは、循環バッファが空でない場合に読み込むことができます。- オーバーライド:
ready
、クラス:Reader
- 戻り値:
- 次のread()が入力をブロックしないことが確実な場合はtrue、そうでない場合はfalse。 falseが返されても、次の読込みが確実にブロックするというわけでない。
- 例外:
IOException
- パイプがbroken
の状態である場合、unconnected
の状態である場合、または閉じられている場合。
-
close
public void close() throws IOExceptionパイプによるストリームを閉じて、それに関連するすべてのシステム・リソースを解放します。- 定義:
close
、インタフェース:AutoCloseable
- 定義:
close
、インタフェース:Closeable
- 定義:
close
、クラス:Reader
- 例外:
IOException
- 入出力エラーが発生した場合。
-