|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object java.io.InputStream java.io.ByteArrayInputStream
public class ByteArrayInputStream
ByteArrayInputStream
は、ストリームから読み込まれたバイトを格納する内部バッファーを保持しています。内部カウンタによって、read
メソッドで次に読み込まれるバイトを追跡します。
ByteArrayInputStream を閉じても、何の影響もありません。IOException を生成せずにストリームが閉じられたあとで、このクラスのメソッドを呼び出すことができます。
StringBufferInputStream
フィールドの概要 | |
---|---|
protected byte[] |
buf
ストリームの作成側によって提供されたバイトの配列です。 |
protected int |
count
入力ストリーム中の最後の有効文字位置よりも 1 つ大きな値を持つインデックスです。 |
protected int |
mark
ストリームの中で、現在マークが設定されている位置を示します。 |
protected int |
pos
入力ストリームバッファーから読み込む次の文字のインデックスです。 |
コンストラクタの概要 | |
---|---|
ByteArrayInputStream(byte[] buf)
buf をバッファー配列として使うように、ByteArrayInputStream を作成します。 |
|
ByteArrayInputStream(byte[] buf,
int offset,
int length)
buf をバッファー配列として使うように、ByteArrayInputStream を作成します。 |
メソッドの概要 | |
---|---|
int |
available()
この入力ストリームから、読み込むことができる (またはスキップできる) 残りのバイト数を返します。 |
void |
close()
ByteArrayInputStream を閉じても、何の影響もありません。 |
void |
mark(int readAheadLimit)
ストリームに現在のマーク位置を設定します。 |
boolean |
markSupported()
この InputStream が mark/reset をサポートしているかどうかを判定します。 |
int |
read()
この入力ストリームからデータの次のバイトを読み込みます。 |
int |
read(byte[] b,
int off,
int len)
入力ストリームから最大 len バイトのデータをバイト配列に読み込みます。 |
void |
reset()
マーク位置へバッファーをリセットします。 |
long |
skip(long n)
この入力ストリームを n バイトだけスキップします。 |
クラス java.io.InputStream から継承されたメソッド |
---|
read |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
フィールドの詳細 |
---|
protected byte[] buf
buf[0]
〜 buf[count-1]
の範囲内の要素だけです。次に読み込まれるバイトは要素 buf[pos]
です。
protected int pos
count
の値より大きくてもいけません。入力ストリームバッファーから読み込まれる次のバイトは、buf[pos]
になります。
protected int mark
mark()
メソッドによりバッファー内のほかの位置にマークを設定できます。バッファーの現在位置は、reset()
メソッドによりこの位置に設定されます。
マークが設定されていない場合、マークの値はコンストラクタに渡されたオフセットになります (オフセットが渡されない場合は 0)。
protected int count
buf
の長さより大きくてもいけません。これは、入力ストリームバッファーから読み込まれる buf
内の最後のバイト位置より 1 つ大きい値です。
コンストラクタの詳細 |
---|
public ByteArrayInputStream(byte[] buf)
buf
をバッファー配列として使うように、ByteArrayInputStream
を作成します。バッファー配列はコピーされません。pos
の初期値は 0
で、count
の初期値は buf
の長さです。
buf
- 入力バッファpublic ByteArrayInputStream(byte[] buf, int offset, int length)
buf
をバッファー配列として使うように、ByteArrayInputStream
を作成します。pos
の初期値は offset
で、count
の初期値は offset+length
と buf.length
の最小値です。バッファー配列はコピーされません。バッファーのマークは指定したオフセットに設定されます。
buf
- 入力バッファoffset
- バッファーからのバイト読み込み開始オフセットlength
- バッファーから読み込む最大バイト数メソッドの詳細 |
---|
public int read()
0
〜 255
の範囲の int
として返されます。ストリームの終わりに達したために読み込むバイトがない場合は、値 -1
が返されます。
この read
メソッドはブロックできません。
InputStream
内の read
-1
public int read(byte[] b, int off, int len)
len
バイトのデータをバイト配列に読み込みます。pos
が count
と一致する場合は、ファイルの終わりに達したことを示す -1
が返されます。そうでない場合は、読み込まれるバイト数 k
は len
と count-pos
のうちのどちらか小さい方に一致します。k
が正の値の場合、buf[pos]
〜 buf[pos+k-1]
の範囲内のバイトが、System.arraycopy
により実行される方法で b[off]
〜 b[off+k-1]
にコピーされます。値 k
が pos
に加えられ、k
が返されます。
この read
メソッドはブロックできません。
InputStream
内の read
b
- データの読み込み先のバッファoff
- 転送先の配列 b
内での開始オフセットlen
- 読み込まれる最大バイト数
-1
NullPointerException
- b
が null
の場合
IndexOutOfBoundsException
- off
が負の場合、len
が負の場合、または len
が b.length - off
よりも大きい場合InputStream.read()
public long skip(long n)
n
バイトだけスキップします。ストリームの終わりに達した場合は、スキップされるバイト数が少なくなることがあります。実際にスキップされるバイト数 k
は、n
と count-pos
のうちのどちらか小さい方に一致します。値 k
が pos
に加えられ、k
が返されます。
InputStream
内の skip
n
- スキップするバイト数
public int available()
戻り値は、count - pos
で、入力バッファーから読み込む残りのバッファー数です。
InputStream
内の available
public boolean markSupported()
InputStream
が mark/reset をサポートしているかどうかを判定します。ByteArrayInputStream
の markSupported
メソッドは常に true
を返します。
InputStream
内の markSupported
true
、サポートしていない場合は false
InputStream.mark(int)
,
InputStream.reset()
public void mark(int readAheadLimit)
マークが設定されていない場合、マークの値はコンストラクタに渡されたオフセットになります (オフセットが渡されない場合は 0)。
注:このクラスの readAheadLimit
に意味はありません。
InputStream
内の mark
readAheadLimit
- マーク位置が無効になる前に読み込み可能なバイトの最大リミットInputStream.reset()
public void reset()
InputStream
内の reset
InputStream.mark(int)
,
IOException
public void close() throws IOException
Closeable
内の close
InputStream
内の close
IOException
- 入出力エラーが発生した場合
|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。