Java DataInputStream類

DataInputStream類用於在DataOutputStream類的上下文中,可用於讀取原始數據。

以下是創建DataInputStream的構造函數 -

InputStream in = new DataInputStream(InputStream in);

當創建了DataInputStream對象,就可以使用一些它的輔助方法來讀取流或在流上執行其他操作。

編號 方法 描述
1 public final int read(byte[] r, int off, int len)throws IOException 將輸入流中最多len個位元組的數據讀入一個位元組數組。 返回讀入緩衝區的總位元組數,否則返回-1(如果它是檔末尾)。
2 public final int read(byte [] b)throws IOException 從輸入流中讀取一些位元組並存儲到位元組數組中。 返回讀入緩衝區的總位元組數,否則返回-1(如果它是檔末尾)。
3 public final Boolean readBooolean()throws IOException,public final byte readByte()throws IOException,public final short readShort()throws IOException,public final Int readInt()throws IOException 這些方法將從包含InputStream中讀取位元組。返回InputStream後兩個位元組作為指定原始類型。
4 public String readLine() throws IOException 從輸入流中讀取下一行文本。 它讀取連續的位元組,將每個位元組分別轉換為字元,直到它遇到行終止符或檔結尾; 然後讀取的字元作為String返回。

示例

以下是演示如何使用DataInputStreamDataOutputStream的示例。 此示例將字串寫入指定檔中,然後再從檔test.txt中讀取內容,參考以下示例代碼 -

import java.io.*;
public class DataInput_Stream {

   public static void main(String args[]) throws IOException {

        // 使用 UTF-8 編碼將字串寫入到檔中
        DataOutputStream dataOut = new DataOutputStream(new FileOutputStream("E:\\file.txt"));
        dataOut.writeUTF("hello\n");
        dataOut.writeUTF("zaixian\n");

        // 從指定檔中讀取內容

        DataInputStream dataIn = new DataInputStream(new FileInputStream("E:\\file.txt"));

        while (dataIn.available() > 0) {
            String str = dataIn.readUTF();
            System.out.print(str);
        }
    }
}

執行上面示例代碼,得到以下結果 -

hello
zaixian

上一篇: Java檔和輸入和輸出(I/O) 下一篇: Java快速入門