fuku.eb4j.io
クラス BookInputStream

java.lang.Object
  上位を拡張 fuku.eb4j.io.BookInputStream
直系の既知のサブクラス:
EBZipInputStream, EPWINGInputStream, PlainInputStream, SEBXAInputStream

public abstract class BookInputStream
extends Object

書籍用入力ストリームの基底クラス。

バージョン:
0.3.5
作成者:
Hisaya FUKUMOTO

フィールドの概要
protected  byte[] _cache
          キャッシュ
protected  long _cachePos
          キャッシュデータのファイルポインタ位置
protected  long _filePos
          ファイルポインタ位置
protected  fuku.eb4j.io.FileInfo _info
          ファイル情報
protected  RandomAccessFile _stream
          入力ストリーム
static int PAGE_SIZE
          ページサイズ
 
メソッドの概要
 void close()
          このファイルを閉じます。
protected  void finalize()
          このオブジェクトで使用されているシステムリソースを破棄します。
 long getFileSize()
          このファイルのファイルサイズを返します。
static int getOffset(long pos)
          ページ内オフセットを返します。
static long getPage(long pos)
          ページ番号を返します。
static long getPosition(long page, int offset)
          ファイルの先頭からの位置を返します。
 long getRealFileSize()
          このファイルの実ファイルサイズを返します。
 int getSliceSize()
          このファイルのスライスサイズを返します。
protected  void initFileInfo()
          ファイル情報を初期化します。
protected  void open()
          このファイルを開きます。
 int read(byte[] b)
          このファイルから最大b.lengthバイトのデータをバイト配列に読み込みます。
abstract  int read(byte[] b, int off, int len)
          このファイルから最大lenバイトのデータをバイト配列に読み込みます。
 void readFully(byte[] b)
          このファイルからb.lengthバイトのデータをバイト配列に読み込みます。
 void readFully(byte[] b, int off, int len)
          このファイルからlenバイトのデータをバイト配列に読み込みます。
protected  int readRaw(byte[] b)
          このファイルから最大b.lengthバイトのデータをバイト配列に読み込みます。
protected  int readRaw(byte[] b, int off, int len)
          このファイルから最大lenバイトのデータをバイト配列に読み込みます。
protected  void readRawFully(byte[] b)
          このファイルからb.lengthバイトのデータをバイト配列に読み込みます。
protected  void readRawFully(byte[] b, int off, int len)
          このファイルからlenバイトのデータをバイト配列に読み込みます。
 void seek(long pos)
          指定位置にファイルポインタを設定します。
 void seek(long page, int offset)
          指定位置にファイルポインタを設定します。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

PAGE_SIZE

public static final int PAGE_SIZE
ページサイズ

関連項目:
定数フィールド値

_info

protected fuku.eb4j.io.FileInfo _info
ファイル情報


_stream

protected RandomAccessFile _stream
入力ストリーム


_filePos

protected long _filePos
ファイルポインタ位置


_cache

protected byte[] _cache
キャッシュ


_cachePos

protected long _cachePos
キャッシュデータのファイルポインタ位置

メソッドの詳細

finalize

protected void finalize()
                 throws Throwable
このオブジェクトで使用されているシステムリソースを破棄します。

オーバーライド:
クラス Object 内の finalize
例外:
Throwable - このメソッドで生じた例外

getFileSize

public final long getFileSize()
このファイルのファイルサイズを返します。

戻り値:
ファイルサイズ

getRealFileSize

public final long getRealFileSize()
このファイルの実ファイルサイズを返します。

戻り値:
実ファイルサイズ

getSliceSize

public final int getSliceSize()
このファイルのスライスサイズを返します。

戻り値:
スライスサイズ

initFileInfo

protected void initFileInfo()
                     throws EBException
ファイル情報を初期化します。

例外:
EBException - 入出力エラーが発生した場合

open

protected final void open()
                   throws EBException
このファイルを開きます。

例外:
EBException - 入出力エラーが発生した場合

close

public final void close()
このファイルを閉じます。


readFully

public final void readFully(byte[] b)
                     throws EBException
このファイルからb.lengthバイトのデータをバイト配列に読み込みます。

パラメータ:
b - データの読み込み先のバッファ
例外:
EBException - 入出力エラーが発生した場合

readFully

public final void readFully(byte[] b,
                            int off,
                            int len)
                     throws EBException
このファイルからlenバイトのデータをバイト配列に読み込みます。

パラメータ:
b - データの読み込み先のバッファ
off - データの開始オフセット
len - 読み込まれる最大バイト数
例外:
EBException - 入出力エラーが発生した場合

read

public final int read(byte[] b)
               throws EBException
このファイルから最大b.lengthバイトのデータをバイト配列に読み込みます。

パラメータ:
b - データの読み込み先のバッファ
戻り値:
バッファに読み込まれたバイトの合計数 (ストリームの終わりに達してデータがない場合は-1)
例外:
EBException - 入出力エラーが発生した場合

read

public abstract int read(byte[] b,
                         int off,
                         int len)
                  throws EBException
このファイルから最大lenバイトのデータをバイト配列に読み込みます。

パラメータ:
b - データの読み込み先のバッファ
off - データの開始オフセット
len - 読み込まれる最大バイト数
戻り値:
バッファに読み込まれたバイトの合計数 (ストリームの終わりに達してデータがない場合は-1)
例外:
EBException - 入出力エラーが発生した場合

seek

public final void seek(long page,
                       int offset)
指定位置にファイルポインタを設定します。

パラメータ:
page - ページ番号
offset - ページ内オフセット

seek

public final void seek(long pos)
指定位置にファイルポインタを設定します。

パラメータ:
pos - データ位置

readRaw

protected final int readRaw(byte[] b)
                     throws EBException
このファイルから最大b.lengthバイトのデータをバイト配列に読み込みます。

パラメータ:
b - データの読み込み先のバッファ
戻り値:
バッファに読み込まれたバイトの合計数 (ストリームの終わりに達してデータがない場合は-1)
例外:
EBException - 入出力エラーが発生した場合

readRaw

protected final int readRaw(byte[] b,
                            int off,
                            int len)
                     throws EBException
このファイルから最大lenバイトのデータをバイト配列に読み込みます。

パラメータ:
b - データの読み込み先のバッファ
off - データの開始オフセット
len - 読み込まれる最大バイト数
戻り値:
バッファに読み込まれたバイトの合計数 (ストリームの終わりに達してデータがない場合は-1)
例外:
EBException - 入出力エラーが発生した場合

readRawFully

protected final void readRawFully(byte[] b)
                           throws EBException
このファイルからb.lengthバイトのデータをバイト配列に読み込みます。

パラメータ:
b - データの読み込み先のバッファ
例外:
EBException - 入出力エラーが発生した場合

readRawFully

protected final void readRawFully(byte[] b,
                                  int off,
                                  int len)
                           throws EBException
このファイルからlenバイトのデータをバイト配列に読み込みます。

パラメータ:
b - データの読み込み先のバッファ
off - データの開始オフセット
len - 読み込まれる最大バイト数
例外:
EBException - 入出力エラーが発生した場合

getPosition

public static final long getPosition(long page,
                                     int offset)
ファイルの先頭からの位置を返します。

パラメータ:
page - ページ番号
offset - ページ内オフセット
戻り値:
先頭からの位置

getPage

public static final long getPage(long pos)
ページ番号を返します。

パラメータ:
pos - 先頭からの位置
戻り値:
ページ番号

getOffset

public static final int getOffset(long pos)
ページ内オフセットを返します。

パラメータ:
pos - 先頭からの位置
戻り値:
ページ内オフセット


Copyright © 2002-2004 Hisaya FUKUMOTO. All rights reserved.