Kagetaka

net.hizlab.kagetaka.io
クラス CounterInputStream

java.lang.Object
  拡張java.io.InputStream
      拡張java.io.FilterInputStream
          拡張net.hizlab.kagetaka.io.CounterInputStream

public class CounterInputStream
extends FilterInputStream

データを読み込む毎にリスナに報告するインプットストリームフィルタです。

バージョン:
$Revision: 1.2 $

フィールドの概要
 
クラス java.io.FilterInputStream から継承したフィールド
in
 
コンストラクタの概要
CounterInputStream(InputStream is, CounterListener listener)
          読み込んだバイト数をカウントするインプットストリームを作成します。
 
メソッドの概要
 void mark(int readlimit)
          入力ストリームの現在位置にマークを付けます。
 int read()
          入力ストリームから次のバイトデータを読み込みます。
 int read(byte[] b)
          入力ストリームからバイト配列に最大 byte.length バイトのデータを読み込みます。
 int read(byte[] b, int off, int len)
          入力ストリームからバイト配列に最大 len バイトのデータを読み込みます。
 void reset()
          入力ストリームへ最後に mark(int) メソッドが 呼び出されたときのマーク位置へこのストリームの位置を再設定します。
 long skip(long n)
          入力ストリームからのデータに対して n バイトだけスキップしてデータを捨てます。
 
クラス java.io.FilterInputStream から継承したメソッド
available, close, markSupported
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

CounterInputStream

public CounterInputStream(InputStream is,
                          CounterListener listener)
読み込んだバイト数をカウントするインプットストリームを作成します。

パラメータ:
is - インプットストリーム
listener - リスナ
メソッドの詳細

mark

public void mark(int readlimit)
入力ストリームの現在位置にマークを付けます。

パラメータ:
readlimit - マーク位置が無効になる前に読み込み可能な最大バイト数

read

public int read()
         throws IOException
入力ストリームから次のバイトデータを読み込みます。

戻り値:
次のバイトデータ、もしストリームの終端が検出された場合は -1
例外:
I/O - エラーが発生した場合。
IOException

read

public int read(byte[] b)
         throws IOException
入力ストリームからバイト配列に最大 byte.length バイトのデータを読み込みます。

パラメータ:
b - データが読み込まれるバッファ
戻り値:
バッファに読み込まれたバイト数、 もしストリームの終端に達して読み込むデータがない場合は -1
例外:
I/O - エラーが発生した場合。
IOException

read

public int read(byte[] b,
                int off,
                int len)
         throws IOException
入力ストリームからバイト配列に最大 len バイトのデータを読み込みます。

パラメータ:
b - データが読み込まれるバッファ
off - データの開始位置を示すオフセット
len - 読み込むバイトの最大値
戻り値:
バッファに読み込まれたバイト数、 もしストリームの終端に達して読み込むデータがない場合は -1
例外:
I/O - エラーが発生した場合。
IOException

reset

public void reset()
           throws IOException
入力ストリームへ最後に mark(int) メソッドが 呼び出されたときのマーク位置へこのストリームの位置を再設定します。

例外:
ストリームにマークが付けられていなかった場合、 - またはマークが無効になっていた場合
IOException

skip

public long skip(long n)
          throws IOException
入力ストリームからのデータに対して n バイトだけスキップしてデータを捨てます。

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

Kagetaka

Copyright (c) 2002-2003 The Kagetaka Project 'December 6, 2003'