- java.lang.Object
-
- java.io.InputStream
-
- java.io.FilterInputStream
-
- java.io.DataInputStream
-
- すべての実装されたインタフェース:
Closeable,DataInput,AutoCloseable
public class DataInputStream extends FilterInputStream implements DataInput
データ入力ストリームにより、アプリケーションは、プリミティブ型のJavaデータをベースとなる入力ストリームからマシンに依存せずに読み込むことができます。 アプリケーションはデータ出力ストリームを使ってデータを書き込むことにより、そのデータをあとで入力ストリームから読み込むこともできます。DataInputStreamは、マルチスレッド・アクセスに対して必ずしも安全ではありません。 スレッドの安全性はこのクラスのメソッドを使用するユーザーによってオプションで保証されます。
- 導入されたバージョン:
- 1.0
- 関連項目:
DataOutputStream
-
-
フィールドのサマリー
-
クラス java.io.FilterInputStreamで宣言されたフィールド
in
-
-
コンストラクタのサマリー
コンストラクタ コンストラクタ 説明 DataInputStream(InputStream in)指定されたベースとなるInputStreamを使用するDataInputStreamを作成します。
-
メソッドのサマリー
すべてのメソッド staticメソッド インスタンス・メソッド 具象メソッド 非推奨のメソッド 修飾子と型 メソッド 説明 intread(byte[] b)格納されている入力ストリームから数バイトを読み込み、それをバッファ配列bに格納します。intread(byte[] b, int off, int len)最大lenバイトのデータを、格納されている入力ストリームからバイト配列に読み込みます。booleanreadBoolean()DataInputのreadBooleanメソッドの汎用規約を参照してください。bytereadByte()DataInputのreadByteメソッドの汎用規約を参照してください。charreadChar()DataInputのreadCharメソッドの汎用規約を参照してください。doublereadDouble()DataInputのreadDoubleメソッドの汎用規約を参照してください。floatreadFloat()DataInputのreadFloatメソッドの汎用規約を参照してください。voidreadFully(byte[] b)DataInputのreadFullyメソッドの汎用規約を参照してください。voidreadFully(byte[] b, int off, int len)DataInputのreadFullyメソッドの汎用規約を参照してください。intreadInt()DataInputのreadIntメソッドの汎用規約を参照してください。StringreadLine()非推奨。このメソッドでは、バイトから文字への変換が正しく行われません。longreadLong()DataInputのreadLongメソッドの汎用規約を参照してください。shortreadShort()DataInputのreadShortメソッドの汎用規約を参照してください。intreadUnsignedByte()DataInputのreadUnsignedByteメソッドの汎用規約を参照してください。intreadUnsignedShort()DataInputのreadUnsignedShortメソッドの汎用規約を参照してください。StringreadUTF()DataInputのreadUTFメソッドの汎用規約を参照してください。static StringreadUTF(DataInput in)修正UTF-8形式でエンコードされたUnicode文字列表現を、ストリームinから読み込みます。読み込まれた文字列は、Stringとして返されます。intskipBytes(int n)DataInputのskipBytesメソッドの汎用規約を参照してください。-
クラス java.io.FilterInputStreamで宣言されたメソッド
available, close, mark, markSupported, read, reset, skip
-
クラス java.io.InputStreamで宣言されたメソッド
readAllBytes, readNBytes, transferTo
-
-
-
-
コンストラクタの詳細
-
DataInputStream
public DataInputStream(InputStream in)
指定されたベースとなるInputStreamを使用するDataInputStreamを作成します。- パラメータ:
in- 指定された入力ストリーム
-
-
メソッドの詳細
-
read
public final int read(byte[] b) throws IOException格納されている入力ストリームから数バイトを読み込み、それをバッファ配列bに格納します。 実際に読み込まれたバイト数は整数として返されます。 このメソッドは、入力データが読み込めるようになるか、ファイルの終わりが検出されるか、あるいは例外がスローされるまでブロックします。bがnullの場合、NullPointerExceptionがスローされます。bの長さがゼロの場合、バイトは読み込まれず、0が返されます。それ以外の場合は、少なくとも1バイトを読み込もうとします。 ストリームがファイルの終わりに達したために読み込むバイトがない場合は値-1が返されます。それ以外の場合は、少なくとも1バイトが読み込まれ、bに格納されます。最初に読み込まれたバイトは要素
b[0]に格納され、次のバイトはb[1]に格納され、それ以降も同様に続きます。 読み込まれるバイト数の上限はbの長さと同じです。 実際に読み込まれるバイト数をkとすると、これらのバイトは要素b[0]からb[k-1]に格納され、要素b[k]からb[b.length-1]は影響を受けません。read(b)メソッドの効果は、次と同じです。read(b, 0, b.length)
- オーバーライド:
read、クラス:FilterInputStream- パラメータ:
b- データの読込み先のバッファ。- 戻り値:
- バッファに読み込まれたバイトの合計数。ストリームの終わりに達してデータがない場合は
-1。 - 例外:
IOException- 最初のバイトを読み込めない理由がファイルの終わりに達したからではない場合、ストリームが閉じられており、ベースとなる入力ストリームが閉じられた状態での読込みをサポートしない場合、または別の入出力エラーが発生した場合。- 関連項目:
FilterInputStream.in,InputStream.read(byte[], int, int)
-
read
public final int read(byte[] b, int off, int len) throws IOException最大lenバイトのデータを、格納されている入力ストリームからバイト配列に読み込みます。lenまでのバイトの読込みが試行されますが、読み込まれるバイト数はもっと少ない場合もあり、0の場合もあります。 実際に読み込まれたバイト数は整数として返されます。このメソッドは、入力データが読み込めるようになるか、ファイルの終わりが検出されるか、あるいは例外がスローされるまでブロックします。
lenがゼロの場合、バイトは読み込まれず、0が返されます。それ以外の場合は、少なくとも1バイトを読み込もうとします。 ストリームがファイルの終わりに達したために読み込むバイトがない場合は値-1が返されます。それ以外の場合は、少なくとも1バイトが読み込まれ、bに格納されます。最初に読み込まれたバイトは要素
b[off]に格納され、次のバイトはb[off+1]に格納され、それ以降も同様に続きます。 読み込まれるバイト数の上限はlenと同じです。 実際に読み込まれるバイト数をkとすると、これらのバイトは要素b[off]-b[off+k-1]に格納され、要素b[off+k]-b[off+len-1]は影響を受けません。すべての場合に、要素
b[0]-b[off]および要素b[off+len]-b[b.length-1]は影響を受けません。- オーバーライド:
read、クラス:FilterInputStream- パラメータ:
b- データの読込み先のバッファ。off- 転送先配列bの開始オフセットlen- 読み込まれる最大バイト数。- 戻り値:
- バッファに読み込まれたバイトの合計数。ストリームの終わりに達してデータがない場合は
-1。 - 例外:
NullPointerException-bがnullである場合。IndexOutOfBoundsException-offが負の値の場合、lenが負の値の場合、あるいはlenがb.length - offより大きい場合IOException- 最初のバイトを読み込めない理由がファイルの終わりに達したからではない場合、ストリームが閉じられており、ベースとなる入力ストリームが閉じられた状態での読込みをサポートしない場合、または別の入出力エラーが発生した場合。- 関連項目:
FilterInputStream.in,InputStream.read(byte[], int, int)
-
readFully
public final void readFully(byte[] b) throws IOExceptionDataInputのreadFullyメソッドの汎用規約を参照してください。このオペレーションのバイトは、格納されている入力ストリームから読み込まれます。
- 定義:
readFully、インタフェース:DataInput- パラメータ:
b- データの読込み先のバッファ。- 例外:
NullPointerException-bがnullである場合。EOFException- すべてのバイトを読み込む前に、この入力ストリームの終わりに達した場合。IOException- ストリームが閉じられており、格納されている入力ストリームが閉じられた状態での読込みをサポートしない場合、または別の入出力エラーが発生した場合。- 関連項目:
FilterInputStream.in
-
readFully
public final void readFully(byte[] b, int off, int len) throws IOExceptionDataInputのreadFullyメソッドの汎用規約を参照してください。このオペレーションのバイトは、格納されている入力ストリームから読み込まれます。
- 定義:
readFully、インタフェース:DataInput- パラメータ:
b- データの読込み先のバッファ。off- データ配列bの開始オフセット。len- 読み込むバイト数。- 例外:
NullPointerException-bがnullである場合。IndexOutOfBoundsException-offが負の値の場合、lenが負の値の場合、またはlenがb.length - offより大きい場合EOFException- すべてのバイトを読み込む前に、この入力ストリームの終わりに達した場合。IOException- ストリームが閉じられており、格納されている入力ストリームが閉じられた状態での読込みをサポートしない場合、または別の入出力エラーが発生した場合。- 関連項目:
FilterInputStream.in
-
skipBytes
public final int skipBytes(int n) throws IOExceptionDataInputのskipBytesメソッドの汎用規約を参照してください。このオペレーションのバイトは、格納されている入力ストリームから読み込まれます。
- 定義:
skipBytes、インタフェース:DataInput- パラメータ:
n- スキップされるバイト数。- 戻り値:
- 実際にスキップされたバイト数。
- 例外:
IOException- 含まれる入力ストリームがシークをサポートしない場合、ストリームが閉じられており、含まれる入力ストリームが閉じられた状態での読込みをサポートしない場合、またはその他の入出力エラーが発生した場合。
-
readBoolean
public final boolean readBoolean() throws IOExceptionDataInputのreadBooleanメソッドの汎用規約を参照してください。このオペレーションのバイトは、格納されている入力ストリームから読み込まれます。
- 定義:
readBoolean、インタフェース:DataInput- 戻り値:
- 読み込まれた
booleanの値。 - 例外:
EOFException- 入力ストリームが終わりに達した場合。IOException- ストリームが閉じられており、格納されている入力ストリームが閉じられた状態での読込みをサポートしない場合、または別の入出力エラーが発生した場合。- 関連項目:
FilterInputStream.in
-
readByte
public final byte readByte() throws IOExceptionDataInputのreadByteメソッドの汎用規約を参照してください。このオペレーションのバイトは、格納されている入力ストリームから読み込まれます。
- 定義:
readByte、インタフェース:DataInput- 戻り値:
- 符号付き8ビット
byteと見なされる入力ストリームの次のバイト。 - 例外:
EOFException- 入力ストリームが終わりに達した場合。IOException- ストリームが閉じられており、格納されている入力ストリームが閉じられた状態での読込みをサポートしない場合、または別の入出力エラーが発生した場合。- 関連項目:
FilterInputStream.in
-
readUnsignedByte
public final int readUnsignedByte() throws IOExceptionDataInputのreadUnsignedByteメソッドの汎用規約を参照してください。このオペレーションのバイトは、格納されている入力ストリームから読み込まれます。
- 定義:
readUnsignedByte、インタフェース:DataInput- 戻り値:
- 入力ストリームの次のバイトを符号なし8ビットと解釈した値。
- 例外:
EOFException- 入力ストリームが終わりに達した場合。IOException- ストリームが閉じられており、格納されている入力ストリームが閉じられた状態での読込みをサポートしない場合、または別の入出力エラーが発生した場合。- 関連項目:
FilterInputStream.in
-
readShort
public final short readShort() throws IOExceptionDataInputのreadShortメソッドの汎用規約を参照してください。このオペレーションのバイトは、格納されている入力ストリームから読み込まれます。
- 定義:
readShort、インタフェース:DataInput- 戻り値:
- 入力ストリームの次の2バイトを符号付き16ビットと解釈した値。
- 例外:
EOFException- 2バイトを読み終わる前に入力ストリームの終わりに達した場合。IOException- ストリームが閉じられており、格納されている入力ストリームが閉じられた状態での読込みをサポートしない場合、または別の入出力エラーが発生した場合。- 関連項目:
FilterInputStream.in
-
readUnsignedShort
public final int readUnsignedShort() throws IOExceptionDataInputのreadUnsignedShortメソッドの汎用規約を参照してください。このオペレーションのバイトは、格納されている入力ストリームから読み込まれます。
- 定義:
readUnsignedShort、インタフェース:DataInput- 戻り値:
- 入力ストリームの次の2バイトを符号なし16ビットと解釈した整数値。
- 例外:
EOFException- 2バイトを読み終わる前に入力ストリームの終わりに達した場合。IOException- ストリームが閉じられており、格納されている入力ストリームが閉じられた状態での読込みをサポートしない場合、または別の入出力エラーが発生した場合。- 関連項目:
FilterInputStream.in
-
readChar
public final char readChar() throws IOExceptionDataInputのreadCharメソッドの汎用規約を参照してください。このオペレーションのバイトは、格納されている入力ストリームから読み込まれます。
- 定義:
readChar、インタフェース:DataInput- 戻り値:
- 入力ストリームの次の2バイトを
charと解釈した値。 - 例外:
EOFException- 2バイトを読み終わる前に入力ストリームの終わりに達した場合。IOException- ストリームが閉じられており、格納されている入力ストリームが閉じられた状態での読込みをサポートしない場合、または別の入出力エラーが発生した場合。- 関連項目:
FilterInputStream.in
-
readInt
public final int readInt() throws IOExceptionDataInputのreadIntメソッドの汎用規約を参照してください。このオペレーションのバイトは、格納されている入力ストリームから読み込まれます。
- 定義:
readInt、インタフェース:DataInput- 戻り値:
- ストリームの次の4バイトを
intと解釈した値。 - 例外:
EOFException- 4バイトを読み終わる前に入力ストリームの終わりに達した場合。IOException- ストリームが閉じられており、格納されている入力ストリームが閉じられた状態での読込みをサポートしない場合、または別の入出力エラーが発生した場合。- 関連項目:
FilterInputStream.in
-
readLong
public final long readLong() throws IOExceptionDataInputのreadLongメソッドの汎用規約を参照してください。このオペレーションのバイトは、格納されている入力ストリームから読み込まれます。
- 定義:
readLong、インタフェース:DataInput- 戻り値:
longとして解釈される、この入力ストリームの次の8バイト。- 例外:
EOFException- 8バイトを読み終わる前に入力ストリームの終わりに達した場合。IOException- ストリームが閉じられており、格納されている入力ストリームが閉じられた状態での読込みをサポートしない場合、または別の入出力エラーが発生した場合。- 関連項目:
FilterInputStream.in
-
readFloat
public final float readFloat() throws IOExceptionDataInputのreadFloatメソッドの汎用規約を参照してください。このオペレーションのバイトは、格納されている入力ストリームから読み込まれます。
- 定義:
readFloat、インタフェース:DataInput- 戻り値:
floatとして解釈される、この入力ストリームの次の4バイト。- 例外:
EOFException- 4バイトを読み終わる前に入力ストリームの終わりに達した場合。IOException- ストリームが閉じられており、格納されている入力ストリームが閉じられた状態での読込みをサポートしない場合、または別の入出力エラーが発生した場合。- 関連項目:
readInt(),Float.intBitsToFloat(int)
-
readDouble
public final double readDouble() throws IOExceptionDataInputのreadDoubleメソッドの汎用規約を参照してください。このオペレーションのバイトは、格納されている入力ストリームから読み込まれます。
- 定義:
readDouble、インタフェース:DataInput- 戻り値:
doubleとして解釈される、この入力ストリームの次の8バイト。- 例外:
EOFException- 8バイトを読み終わる前に入力ストリームの終わりに達した場合。IOException- ストリームが閉じられており、格納されている入力ストリームが閉じられた状態での読込みをサポートしない場合、または別の入出力エラーが発生した場合。- 関連項目:
readLong(),Double.longBitsToDouble(long)
-
readLine
@Deprecated public final String readLine() throws IOException
非推奨。このメソッドでは、バイトから文字への変換が正しく行われません。 JDK 1.1以降、テキスト行を読み込むには、BufferedReader.readLine()メソッドを使うことが推奨されています。 行を読み込むのにDataInputStreamクラスを使うプログラムを、BufferedReaderクラスを使うように変換するには、次の形式のコードを、
次の形式のコードで置き換えます。DataInputStream d = new DataInputStream(in);BufferedReader d = new BufferedReader(new InputStreamReader(in));DataInputのreadLineメソッドの汎用規約を参照してください。このオペレーションのバイトは、格納されている入力ストリームから読み込まれます。
- 定義:
readLine、インタフェース:DataInput- 戻り値:
- 入力ストリームからの次のテキスト行。
- 例外:
IOException- 入出力エラーが発生した場合。- 関連項目:
BufferedReader.readLine(),FilterInputStream.in
-
readUTF
public final String readUTF() throws IOException
DataInputのreadUTFメソッドの汎用規約を参照してください。このオペレーションのバイトは、格納されている入力ストリームから読み込まれます。
- 定義:
readUTF、インタフェース:DataInput- 戻り値:
- Unicode文字列。
- 例外:
EOFException- すべてのバイトを読み込む前に、この入力ストリームの終わりに達した場合。IOException- ストリームが閉じられており、格納されている入力ストリームが閉じられた状態での読込みをサポートしない場合、または別の入出力エラーが発生した場合。UTFDataFormatException- 文字列中のバイトが、有効な修正UTF-8形式でエンコードされた文字列以外であった場合。- 関連項目:
readUTF(java.io.DataInput)
-
readUTF
public static final String readUTF(DataInput in) throws IOException
修正UTF-8形式でエンコードされたUnicode文字列表現を、ストリームinから読み込みます。読み込まれた文字列は、Stringとして返されます。 修正UTF-8表現の詳細は、DataInputのreadUTFメソッドのものと完全に一致します。- パラメータ:
in- データ入力ストリーム。- 戻り値:
- Unicode文字列。
- 例外:
EOFException- すべてのバイトを読み終わる前に入力ストリームの終わりに達した場合。IOException- ストリームが閉じられており、格納されている入力ストリームが閉じられた状態での読込みをサポートしない場合、または別の入出力エラーが発生した場合。UTFDataFormatException- 文字列中のバイトが、有効な修正UTF-8形式でエンコードされたUnicode文字列以外であった場合。- 関連項目:
readUnsignedShort()
-
-