Kagetaka

net.hizlab.kagetaka.io
クラス BinaryInputStream

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

public class BinaryInputStream
extends FilterInputStream

バイナリファイルを読み込むためのクラスです。 マーク・リセットはサポートしていません。 また、スレッドセーフではないので、複数のスレッド間で 同時に使用する場合は、同期に気をつけてください。

バージョン:
$Revision: 1.1 $

フィールドの概要
 
クラス java.io.FilterInputStream から継承したフィールド
in
 
コンストラクタの概要
BinaryInputStream(InputStream in, int bufferSize)
          指定されたインプットストリームを元にしたインスタンスを作成します。
 
メソッドの概要
static long byteToLong(byte[] b, int off, int len)
          バイト配列をリトルエインディアンとして long に変換します。
 long getOffset()
          現在の読み込んだ位置を返します。
 int read()
          このバイト入力ストリームから、データの次のバイトを読み込みます。
 int read(byte[] b, int off, int len)
          このバイト入力ストリームからバイトを読み取って、 指定されたバイト配列に指定のオフセットから挿入します。
 long readNumber(int size)
          指定されたサイズをリトルエインディアンの値として読み込みます。
 String readString(String encoding)
          NULL 終端までを文字列として読み込みます。
 long skip(long size)
          指定バイト分、スキップします。
 
クラス java.io.FilterInputStream から継承したメソッド
available, close, mark, markSupported, read, reset
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

BinaryInputStream

public BinaryInputStream(InputStream in,
                         int bufferSize)
指定されたインプットストリームを元にしたインスタンスを作成します。

パラメータ:
in - インプットストリーム
bufferSize - 内部バッファサイズ
メソッドの詳細

byteToLong

public static long byteToLong(byte[] b,
                              int off,
                              int len)
バイト配列をリトルエインディアンとして long に変換します。

パラメータ:
b - 変換元のバイト配列
off - 開始位置
len - 長さ
戻り値:
変換された値

getOffset

public long getOffset()
現在の読み込んだ位置を返します。

戻り値:
読み込んだ位置

read

public int read()
         throws IOException
このバイト入力ストリームから、データの次のバイトを読み込みます。 そのバイトは、0255 の範囲の int として返されます。 ストリームの終わりに達してバイトがない場合は、 値 -1 が返されます。 このメソッドは、入力データが読み込まれるようになるか、 ストリームの終わりが検出されるか、 または例外がスローされるまでブロックします。

戻り値:
データの次のバイト。 ストリームの終わりに達した場合は -1
例外:
IOException

read

public int read(byte[] b,
                int off,
                int len)
         throws IOException
このバイト入力ストリームからバイトを読み取って、 指定されたバイト配列に指定のオフセットから挿入します。

パラメータ:
b - 転送先バッファ
off - バイトの格納開始オフセット
len - 読み込むバイトの最大数
戻り値:
読み込まれるバイト数。 ストリームの終わりに達した場合は -1
例外:
IOException

readNumber

public long readNumber(int size)
                throws IOException
指定されたサイズをリトルエインディアンの値として読み込みます。

パラメータ:
size - サイズ
戻り値:
読み込んだ値
例外:
EOFException - 指定サイズ以前にファイルの終端に足した場合
IOException

readString

public String readString(String encoding)
                  throws IOException
NULL 終端までを文字列として読み込みます。

パラメータ:
encoding - エンコーディング
戻り値:
読み込んだ文字列
例外:
EOFException - NULL 終端文字以前にファイルの終端に足した場合
IOException

skip

public long skip(long size)
          throws IOException
指定バイト分、スキップします。

パラメータ:
size - スキップするバイト数
戻り値:
実際にスキップしたバイト数
例外:
IOException

Kagetaka

Copyright (c) 2002-2003 The Kagetaka Project 'September 12, 2003'