nanoJBlend

java.io
クラス Reader

java.lang.Object
  上位を拡張 java.io.Reader
直系の既知のサブクラス:
BufferedReader, InputStreamReader

public abstract class Reader
extends Object

文字ストリームを読み込むための抽象クラスです。 サブクラスがオーバーライドする必要のあるメソッドは read(char[], int, int)close() ですが、たいていのサブクラスはそれら以外のここで定義されているメソッドをより高性能なものにしたり機能を追加したりするためにオーバーライドするでしょう。


メソッドの概要
abstract  void close()
          ストリームをクローズします。
 void mark(int readAheadLimit)
          このストリーム中の現在のアクセス位置をマークします。
 boolean markSupported()
          このストリームが mark 操作をサポートしているかどうかをテストします。
 int read()
          一文字読み込みます。
 int read(char[] cbuf)
          複数の文字を配列に読み込みます。
abstract  int read(char[] cbuf, int off, int len)
          複数の文字を配列の一部分に読み込みます。
 boolean ready()
          このストリームから読み込み可能かどうかテストします。
 void reset()
          ストリームをリセットします。
 long skip(long n)
          複数の文字をスキップします。
 
クラス java.lang.Object から継承されたメソッド
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait
 

メソッドの詳細

close

public abstract void close()
                    throws IOException
ストリームをクローズします。 いちどクローズすると、以後 readreadymark 、または reset を呼び出すと IOException がスローされます。 既にクローズされているストリームをクローズしても影響はありません。

例外:
IOException - I/Oエラーが発生した場合

mark

public void mark(int readAheadLimit)
          throws IOException
このストリーム中の現在のアクセス位置をマークします。 以降 reset メソッドを呼ぶと、このストリームのアクセス位置を最後にマークされた位置にリセットします。 必ずしもすべての文字入力ストリームが mark 操作をサポートしていないことに注意してください。

パラメータ:
readAheadLimit - マーク位置を保持したままで読み出し可能な最大文字数です。 この文字数分を読みだした後にストリームをリセットすると失敗する可能性があります。
例外:
IOException - ストリームが mark をサポートしない場合、または何らかの I/O エラーが発生した場合

markSupported

public boolean markSupported()
このストリームが mark 操作をサポートしているかどうかをテストします。 デフォルトの実装では常に false を返します。 サブクラスでこのメソッドをオーバーライドしてください。

戻り値:
このストリームが mark 操作をサポートしている場合 true、サポートしていない場合 false

read

public int read()
         throws IOException
一文字読み込みます。 このメソッドは一文字が得られるまで、I/Oエラーが発生するまで、またはストリームの終端に到達するまでブロックします。

より高性能な実装にするにはサブクラスでオーバーライドしてください。

戻り値:
読み込んだ文字を、 0 から 655350x00 から 0xffff )までの範囲の値を持つ整数で返します。 ストリームの終端に到達した場合は -1 を返します。
例外:
IOException - I/Oエラーが発生した場合

read

public int read(char[] cbuf)
         throws IOException
複数の文字を配列に読み込みます。 このメソッドは、何文字か読み込むまで、I/Oエラーが発生するまで、またはストリームの終端に到達するまでブロックします。

パラメータ:
cbuf - 格納先のバッファ
戻り値:
読み込んだ文字数。 ストリームの終端に到達した場合は -1
例外:
IOException - I/Oエラーが発生した場合

read

public abstract int read(char[] cbuf,
                         int off,
                         int len)
                  throws IOException
複数の文字を配列の一部分に読み込みます。 このメソッドは、何文字か読み込むまで、I/Oエラーが発生するまで、またはストリームの終端に到達するまでブロックします。

パラメータ:
cbuf - 格納先のバッファ
off - 文字をバッファに書き込み始めるオフセット位置
len - 読み込む文字の最大数
戻り値:
読み込んだ文字数。 ストリームの終端に到達した場合は -1
例外:
IOException - I/Oエラーが発生した場合

ready

public boolean ready()
              throws IOException
このストリームから読み込み可能かどうかテストします。

戻り値:
次に read メソッドを呼び出してブロックすることなく入力できる場合 true 、それ以外の場合は false を返します。 false が返されたときに、次の読み出しがブロックされることが保証されるわけではありません。
例外:
IOException - I/Oエラーが発生した場合

reset

public void reset()
           throws IOException
ストリームをリセットします。 ストリームがマークされていた場合、このメソッドは読み出し位置のマーク位置へのリセットを試みます。 ストリームがマークされていない場合、個々のストリームの適した方法(たとえばストリームの始端を読み出し位置にするなど)でリセットを試みます。 必ずしもすべての文字入力ストリームが reset 操作をサポートするわけではないこと、また reset をサポートするが mark をサポートしない場合などがあることに注意してください

例外:
IOException - ストリームがマークされていない場合、マークが無効になっている場合、ストリームが reset をサポートしていない場合、または何らかのI/Oエラーが発生した場合

skip

public long skip(long n)
          throws IOException
複数の文字をスキップします。 このメソッドは、何文字かスキップするまで、I/Oエラーが発生するまで、またはストリームの終端に到達するまでブロックします。

パラメータ:
n - スキップする文字数
戻り値:
実際にスキップした文字数
例外:
IOException - I/Oエラーが発生した場合

nanoJBlend

Copyright 2005-2013 Aplix and/or its affiliates. All rights reserved. Aplix Confidential and Restricted.
NTT DOCOMO and Hitachi Kokusai Electric Confidential