public class SharedFileInputStream extends BufferedInputStreamSE implements SharedInputStream
SharedFileInputStream
は、ファイルからのデータをバッファリングし、mark
および reset
メソッドをサポートする BufferedInputStream
です。また、ファイルのサブセットを表す他のストリームを作成できる newStream
メソッドもサポートしています。RandomAccessFile
オブジェクトは、ファイルデータにアクセスするために使用されます。SharedFileInputStream が閉じられると、newStream
メソッドで作成されたすべてのストリームも閉じられることに注意してください。これにより、SharedFileInputStream オブジェクトの作成者は、基になるファイルへのアクセスを制御し、必要に応じてファイルが閉じられるようにして、ファイル記述子のリークを回避できます。この動作は SharedInputStream の要件と矛盾し、将来のリリースで変更される可能性があることにも注意してください。
修飾子と型 | フィールドと説明 |
---|---|
protected long | bufpos 読み取りバッファの最初のバイトに対応するファイルオフセット。 |
protected int | bufsize 読み取りバッファの通常のサイズ。 |
protected long | datalen ファイルのこのサブセット内のデータの量。 |
protected RandomAccessFileSE | in データを含むファイル。 |
protected long | start ファイルのこのサブセット内のデータの開始のファイルオフセット。 |
bufSE, countSE, marklimitSE, markposSE, posSE
コンストラクターと説明 |
---|
SharedFileInputStream(FileSE file) ファイルの SharedFileInputStream を作成します。 |
SharedFileInputStream(FileSE file, int size) 指定されたバッファサイズで SharedFileInputStream を作成します。 |
SharedFileInputStream(StringSE file) 名前付きファイルの SharedFileInputStream を作成します |
SharedFileInputStream(StringSE file, int size) 指定されたバッファサイズで SharedFileInputStream を作成します。 |
修飾子と型 | メソッドと説明 |
---|---|
int | available() この入力ストリームからブロックせずに読み取ることができるバイト数を返します。 |
void | close() この入力ストリームを閉じて、ストリームに関連付けられているシステムリソースを解放します。 |
protected void | finalize() このストリームを強制的に閉じます。 |
long | getPosition() InputStream の先頭からのオフセットとして、InputStream の現在の位置を返します。 |
void | mark(int readlimit) InputStream の mark メソッドの一般契約を参照してください。 |
boolean | markSupported() この入力ストリームが mark および reset メソッドをサポートしているかどうかをテストします。 |
InputStreamSE | newStream(long start, long end) この InputStream からのデータのサブセットを表す新しい InputStream を返します。これは、 start (包括的)から end (排他的)までです。 |
int | read() InputStream の read メソッドの一般契約を参照してください。 |
int | read(byte[] b, int off, int len) 指定されたオフセットから開始して、このストリームから指定されたバイト配列にバイトを読み取ります。 |
void | reset() InputStream の reset メソッドの一般契約を参照してください。 |
long | skip(long n) InputStream の skip メソッドの一般契約を参照してください。 |
readSE
cloneSE, equalsSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
protected RandomAccessFileSE in
protected int bufsize
protected long bufpos
protected long start
protected long datalen
public SharedFileInputStream(FileSE file) throws IOExceptionSE
SharedFileInputStream
を作成します。file
- ファイル IOExceptionSE
- ファイルを開くときにエラーが発生した場合 public SharedFileInputStream(StringSE file) throws IOExceptionSE
SharedFileInputStream
を作成します file
- ファイル IOExceptionSE
- ファイルを開くときにエラーが発生した場合 public SharedFileInputStream(FileSE file, int size) throws IOExceptionSE
SharedFileInputStream
を作成します。file
- ファイル size
- バッファサイズ。IOExceptionSE
- ファイルを開くときにエラーが発生した場合 IllegalArgumentExceptionSE
- サイズ ≤ の場合 0。public SharedFileInputStream(StringSE file, int size) throws IOExceptionSE
SharedFileInputStream
を作成します。file
- ファイル size
- バッファサイズ。IOExceptionSE
- ファイルを開くときにエラーが発生した場合 IllegalArgumentExceptionSE
- サイズ ≤ の場合 0。public int read() throws IOExceptionSE
InputStream
の read
メソッドの一般契約を参照してください。BufferedInputStreamSE
の readSE
-1
。IOExceptionSE
- I/O エラーが発生した場合。public int read(byte[] b, int off, int len) throws IOExceptionSE
このメソッドは、
クラスの対応する InputStream
SE
メソッドの一般的な契約を実装します。read
SE
BufferedInputStreamSE
の readSE
b
- 宛先バッファ。off
- バイトの格納を開始するオフセット。len
- 読み取る最大バイト数。-1
。IOExceptionSE
- I/O エラーが発生した場合。public long skip(long n) throws IOExceptionSE
InputStream
の skip
メソッドの一般契約を参照してください。BufferedInputStreamSE
の skipSE
n
- スキップされるバイト数。IOExceptionSE
- I/O エラーが発生した場合。public int available() throws IOExceptionSE
BufferedInputStreamSE
の availableSE
IOExceptionSE
- I/O エラーが発生した場合。public void mark(int readlimit)
InputStream
の mark
メソッドの一般契約を参照してください。BufferedInputStreamSE
の markSE
readlimit
- マーク位置が無効になる前に読み取ることができるバイトの最大制限。reset()
public void reset() throws IOExceptionSE
InputStream
の reset
メソッドの一般契約を参照してください。markpos
が -1
の場合(マークが設定されていないか、マークが無効になっている場合)、IOException
がスローされます。それ以外の場合、pos
は markpos
と等しく設定されます。
BufferedInputStreamSE
の resetSE
IOExceptionSE
- このストリームがマークされていない場合、またはマークが無効になっている場合。mark(int)
public boolean markSupported()
mark
および reset
メソッドをサポートしているかどうかをテストします。SharedFileInputStream
の markSupported
メソッドは true
を返します。BufferedInputStreamSE
の markSupportedSE
mark
および reset
メソッドをサポートするかどうかを示す boolean
。InputStream.mark(int)
SE, InputStream.reset()
SEpublic void close() throws IOExceptionSE
CloseableSE
の closeSE
AutoCloseableSE
の closeSE
BufferedInputStreamSE
の closeSE
IOExceptionSE
- I/O エラーが発生した場合。public long getPosition()
SharedInputStream
の getPosition
public InputStreamSE newStream(long start, long end)
start
(包括的)から end
(排他的)までです。start
は非負でなければなりません。end
が -1 の場合、新しいストリームはこのストリームと同じ場所で終了します。返された InputStream は、SharedInputStream インターフェースも実装します。SharedInputStream
の newStream
start
- 開始位置 end
- 終了位置 +1protected void finalize() throws ThrowableSE
ObjectSE
の finalizeSE
ThrowableSE
Copyright © 2018,2020 Eclipse Foundation.
Use is subject to license terms.