クラスDataInputStream

すべての実装されたインタフェース:
Closeable, DataInput, AutoCloseable

public class DataInputStream extends FilterInputStream implements DataInput
データ入力ストリー により、アプリケーションは、プリミティブ型のJavaデータをベースとなる入力ストリー からマシンに依存せずに読み込むことができます。 アプリケーションはデータ出力ストリー を使ってデータを書き込むことにより、そのデータをあとで入力ストリー から読み込むこともできます。

DataInputStreamは、複数の並行スレッドで安全に使用できません。 DataInputStreamを複数のスレッドで使用する 合は、適切な同期によってデータ入力ストリー へのアクセスを制御する必要があります。

導入されたバージョン:
1.0
関連 目:
  • フィールドのサマリー

    クラスjava.io.FilterInputStreamで宣言されたフィールド

    in
  • コンストラクタのサマリー

    コンストラクタ
    コンストラクタ
    説明
    指定されたベースとなるInputStreamを使用するDataInputStreamを作成します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    final int
    read(byte[] b)
     納されている入力ストリー から数バイトを読み込み、それをバッファ配列bに 納します。
    final int
    read(byte[] b, int off, int len)
    最大lenバイトのデータを、 納されている入力ストリー からバイト配列に読み込みます。
    final boolean
    DataInputreadBooleanメソッドの汎用規約を参照してく さい。
    final byte
    DataInputreadByteメソッドの汎用規約を参照してく さい。
    final char
    DataInputreadCharメソッドの汎用規約を参照してく さい。
    final double
    DataInputreadDoubleメソッドの汎用規約を参照してく さい。
    final float
    DataInputreadFloatメソッドの汎用規約を参照してく さい。
    final void
    readFully(byte[] b)
    DataInputreadFullyメソッドの汎用規約を参照してく さい。
    final void
    readFully(byte[] b, int off, int len)
    DataInputreadFullyメソッドの汎用規約を参照してく さい。
    final int
    DataInputreadIntメソッドの汎用規約を参照してく さい。
    final String
    非推奨。
    このメソッドは、バイトを文字に正しく変換しません。
    final long
    DataInputreadLongメソッドの汎用規約を参照してく さい。
    final short
    DataInputreadShortメソッドの汎用規約を参照してく さい。
    final int
    DataInputreadUnsignedByteメソッドの汎用規約を参照してく さい。
    final int
    DataInputreadUnsignedShortメソッドの汎用規約を参照してく さい。
    final String
    DataInputreadUTFメソッドの汎用規約を参照してく さい。
    static final String
    修正UTF-8形式でエンコードされたUnicode文字列表現を、ストリー inから読み込みます。読み込まれた文字列は、Stringとして返されます。
    final int
    skipBytes(int n)
    DataInputskipBytesメソッドの汎用規約を参照してく さい。

    クラスjava.io.FilterInputStreamで宣言されたメソッド

    available, close, mark, markSupported, read, reset, skip

    クラスjava.io.InputStreamで宣言されたメソッド

    nullInputStream, readAllBytes, readNBytes, readNBytes, skipNBytes, transferTo

    クラスjava.lang.Objectで宣言されたメソッド

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • コンストラクタの詳細

    • 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 - 最初のバイトを読み込めない理由がファイルの終わりに達したからではない 合、ストリー が閉じられており、ベースとなる入力ストリー が閉じられた状態での読込みをサポートしない 合、または別の入出力エラーが発生した 合。
      関連 目:
    • 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 - bnullである 合。
      IndexOutOfBoundsException - offが の値の 合、lenが の値の 合、あるいはlenb.length - offより大きい 合
      IOException - 最初のバイトを読み込めない理由がファイルの終わりに達したからではない 合、ストリー が閉じられており、ベースとなる入力ストリー が閉じられた状態での読込みをサポートしない 合、または別の入出力エラーが発生した 合。
      関連 目:
    • readFully

      public final void readFully(byte[] b) throws IOException
      DataInputreadFullyメソッドの汎用規約を参照してく さい。

      このオペレーションのバイトは、 納されている入力ストリー から読み込まれます。

      定義:
      readFully、インタフェースDataInput
      パラメータ:
      b - データの読込み先のバッファ。
      スロー:
      NullPointerException - bnullである 合。
      EOFException - すべてのバイトを読み込む前に、この入力ストリー の終わりに達した 合。
      IOException - ストリー が閉じられており、 納されている入力ストリー が閉じられた状態での読込みをサポートしない 合、または別の入出力エラーが発生した 合。
      関連 目:
    • readFully

      public final void readFully(byte[] b, int off, int len) throws IOException
      DataInputreadFullyメソッドの汎用規約を参照してく さい。

      このオペレーションのバイトは、 納されている入力ストリー から読み込まれます。

      定義:
      readFully、インタフェースDataInput
      パラメータ:
      b - データの読込み先のバッファ。
      off - データ配列bの開始オフセット。
      len - 読み込むバイト数。
      スロー:
      NullPointerException - bnullである 合。
      IndexOutOfBoundsException - offが の値の 合、lenが の値の 合、またはlenb.length - offより大きい 合
      EOFException - すべてのバイトを読み込む前に、この入力ストリー の終わりに達した 合。
      IOException - ストリー が閉じられており、 納されている入力ストリー が閉じられた状態での読込みをサポートしない 合、または別の入出力エラーが発生した 合。
      関連 目:
    • skipBytes

      public final int skipBytes(int n) throws IOException
      DataInputskipBytesメソッドの汎用規約を参照してく さい。

      このオペレーションのバイトは、 納されている入力ストリー から読み込まれます。

      定義:
      skipBytes、インタフェースDataInput
      パラメータ:
      n - スキップされるバイト数。
      戻り値:
      実際にスキップされたバイト数。
      スロー:
      IOException - 含まれる入力ストリー がシークをサポートしない 合、ストリー が閉じられており、含まれる入力ストリー が閉じられた状態での読込みをサポートしない 合、またはその他の入出力エラーが発生した 合。
    • readBoolean

      public final boolean readBoolean() throws IOException
      DataInputreadBooleanメソッドの汎用規約を参照してく さい。

      このオペレーションのバイトは、 納されている入力ストリー から読み込まれます。

      定義:
      readBoolean、インタフェースDataInput
      戻り値:
      読み込まれたbooleanの値。
      スロー:
      EOFException - 入力ストリー が終わりに達した 合。
      IOException - ストリー が閉じられており、 納されている入力ストリー が閉じられた状態での読込みをサポートしない 合、または別の入出力エラーが発生した 合。
      関連 目:
    • readByte

      public final byte readByte() throws IOException
      DataInputreadByteメソッドの汎用規約を参照してく さい。

      このオペレーションのバイトは、 納されている入力ストリー から読み込まれます。

      定義:
      readByte、インタフェースDataInput
      戻り値:
      符号付き8ビットbyteと見なされる入力ストリー の次のバイト。
      スロー:
      EOFException - 入力ストリー が終わりに達した 合。
      IOException - ストリー が閉じられており、 納されている入力ストリー が閉じられた状態での読込みをサポートしない 合、または別の入出力エラーが発生した 合。
      関連 目:
    • readUnsignedByte

      public final int readUnsignedByte() throws IOException
      DataInputreadUnsignedByteメソッドの汎用規約を参照してく さい。

      このオペレーションのバイトは、 納されている入力ストリー から読み込まれます。

      定義:
      readUnsignedByte、インタフェースDataInput
      戻り値:
      入力ストリー の次のバイトを符号なし8ビットと解釈した値。
      スロー:
      EOFException - 入力ストリー が終わりに達した 合。
      IOException - ストリー が閉じられており、 納されている入力ストリー が閉じられた状態での読込みをサポートしない 合、または別の入出力エラーが発生した 合。
      関連 目:
    • readShort

      public final short readShort() throws IOException
      DataInputreadShortメソッドの汎用規約を参照してく さい。

      このオペレーションのバイトは、 納されている入力ストリー から読み込まれます。

      定義:
      readShort、インタフェースDataInput
      戻り値:
      入力ストリー の次の2バイトを符号付き16ビットと解釈した値。
      スロー:
      EOFException - 2バイトを読み終わる前に入力ストリー の終わりに達した 合。
      IOException - ストリー が閉じられており、 納されている入力ストリー が閉じられた状態での読込みをサポートしない 合、または別の入出力エラーが発生した 合。
      関連 目:
    • readUnsignedShort

      public final int readUnsignedShort() throws IOException
      DataInputreadUnsignedShortメソッドの汎用規約を参照してく さい。

      このオペレーションのバイトは、 納されている入力ストリー から読み込まれます。

      定義:
      readUnsignedShort、インタフェースDataInput
      戻り値:
      入力ストリー の次の2バイトを符号なし16ビットと解釈した整数値。
      スロー:
      EOFException - 2バイトを読み終わる前に入力ストリー の終わりに達した 合。
      IOException - ストリー が閉じられており、 納されている入力ストリー が閉じられた状態での読込みをサポートしない 合、または別の入出力エラーが発生した 合。
      関連 目:
    • readChar

      public final char readChar() throws IOException
      DataInputreadCharメソッドの汎用規約を参照してく さい。

      このオペレーションのバイトは、 納されている入力ストリー から読み込まれます。

      定義:
      readChar、インタフェースDataInput
      戻り値:
      入力ストリー の次の2バイトをcharと解釈した値。
      スロー:
      EOFException - 2バイトを読み終わる前に入力ストリー の終わりに達した 合。
      IOException - ストリー が閉じられており、 納されている入力ストリー が閉じられた状態での読込みをサポートしない 合、または別の入出力エラーが発生した 合。
      関連 目:
    • readInt

      public final int readInt() throws IOException
      DataInputreadIntメソッドの汎用規約を参照してく さい。

      このオペレーションのバイトは、 納されている入力ストリー から読み込まれます。

      定義:
      readInt、インタフェースDataInput
      戻り値:
      ストリー の次の4バイトをintと解釈した値。
      スロー:
      EOFException - 4バイトを読み終わる前に入力ストリー の終わりに達した 合。
      IOException - ストリー が閉じられており、 納されている入力ストリー が閉じられた状態での読込みをサポートしない 合、または別の入出力エラーが発生した 合。
      関連 目:
    • readLong

      public final long readLong() throws IOException
      DataInputreadLongメソッドの汎用規約を参照してく さい。

      このオペレーションのバイトは、 納されている入力ストリー から読み込まれます。

      定義:
      readLong、インタフェースDataInput
      戻り値:
      longとして解釈される、この入力ストリー の次の8バイト。
      スロー:
      EOFException - 8バイトを読み終わる前に入力ストリー の終わりに達した 合。
      IOException - ストリー が閉じられており、 納されている入力ストリー が閉じられた状態での読込みをサポートしない 合、または別の入出力エラーが発生した 合。
      関連 目:
    • readFloat

      public final float readFloat() throws IOException
      DataInputreadFloatメソッドの汎用規約を参照してく さい。

      このオペレーションのバイトは、 納されている入力ストリー から読み込まれます。

      定義:
      readFloat、インタフェースDataInput
      戻り値:
      floatとして解釈される、この入力ストリー の次の4バイト。
      スロー:
      EOFException - 4バイトを読み終わる前に入力ストリー の終わりに達した 合。
      IOException - ストリー が閉じられており、 納されている入力ストリー が閉じられた状態での読込みをサポートしない 合、または別の入出力エラーが発生した 合。
      関連 目:
    • readDouble

      public final double readDouble() throws IOException
      DataInputreadDoubleメソッドの汎用規約を参照してく さい。

      このオペレーションのバイトは、 納されている入力ストリー から読み込まれます。

      定義:
      readDouble、インタフェースDataInput
      戻り値:
      doubleとして解釈される、この入力ストリー の次の8バイト。
      スロー:
      EOFException - 8バイトを読み終わる前に入力ストリー の終わりに達した 合。
      IOException - ストリー が閉じられており、 納されている入力ストリー が閉じられた状態での読込みをサポートしない 合、または別の入出力エラーが発生した 合。
      関連 目:
    • 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));
       
      DataInputreadLineメソッドの汎用規約を参照してく さい。

      このオペレーションのバイトは、 納されている入力ストリー から読み込まれます。

      定義:
      readLine、インタフェースDataInput
      戻り値:
      入力ストリー からの次のテキスト行。
      スロー:
      IOException - 入出力エラーが発生した 合。
      関連 目:
    • readUTF

      public final String readUTF() throws IOException
      DataInputreadUTFメソッドの汎用規約を参照してく さい。

      このオペレーションのバイトは、 納されている入力ストリー から読み込まれます。

      定義:
      readUTF、インタフェースDataInput
      戻り値:
      Unicode文字列。
      スロー:
      EOFException - すべてのバイトを読み込む前に、この入力ストリー の終わりに達した 合。
      IOException - ストリー が閉じられており、 納されている入力ストリー が閉じられた状態での読込みをサポートしない 合、または別の入出力エラーが発生した 合。
      UTFDataFormatException - 文字列中のバイトが、有効な修正UTF-8形式でエンコードされた文字列以外であった 合。
      関連 目:
    • readUTF

      public static final String readUTF(DataInput in) throws IOException
      修正UTF-8形式でエンコードされたUnicode文字列表現を、ストリー inから読み込みます。読み込まれた文字列は、Stringとして返されます。 修正UTF-8表現の詳細は、DataInputreadUTFメソッドのものと完全に一致します。
      パラメータ:
      in - データ入力ストリー 。
      戻り値:
      Unicode文字列。
      スロー:
      EOFException - すべてのバイトを読み終わる前に入力ストリー の終わりに達した 合。
      IOException - ストリー が閉じられており、 納されている入力ストリー が閉じられた状態での読込みをサポートしない 合、または別の入出力エラーが発生した 合。
      UTFDataFormatException - 文字列中のバイトが、有効な修正UTF-8形式でエンコードされたUnicode文字列以外であった 合。
      関連 目: