JAVA基礎——數據流
DataInputStream 類和DataOutputStream 類
在前面的學習中,我們知道數據流處理的數據都是指字節或字節數組,但實際上很多時候不是這樣的,它需要數據流能直接讀、寫各種各樣的java語言的基本數據類型。例如在一個文件中存放300個整數值,從中讀取時,希望按int為基本單位進行讀取,這樣可以大大節省時間。這時就需要使用DataInputStream和DataOutputStream,DataInputStream和DataOutputStream不但支持父類InputStream和OutputStream中的方法,以原有方式讀寫數據,同時還允許通過數據流來讀寫java語言的基本數據類型,包括int、float、double和double等。
DataInputStream(Obj)
DataOutputStream(Obj)
Obj為已經建立好的輸入輸出數據流對象
DatainputStream 和 DataOutputStream之所以能夠對這些原始類型進行操作,是因為他們有一組特定的方法。
DataInputStream 的常用方法如下:
-> byte readByte()
-> long readLong()
-> double readDouble()
-> boolean readBoolean()
-> String readUTF()
-> int readInt()
-> float readFloat()
-> short readShort()
-> char readChar()
以上這些方法分別對int、byte、float、char等類型進行讀取。
-> void writeByte(int a)
-> void writeLong(long a)
-> void wirteDouble(double a)
-> void writeBoolean(boolean a)
-> void writeUTF(String a)
-> void writeInt(int a)
-> void writeChar(char a)
-> void writeFloat(float a)
-> void writeShort(short a)
以上這些方法分別對int、byte、float、char等類型進行寫入。
以下是關於DataInputStream 和 DataOutputStream 實例:
package com.feicuiedu.test;
import java.io.*;
public class Liu_Test{
public static void main(String args[ ] ) throws Exception{
FileOutputStream fos = new FileOutputStream("text.txt");
DataOutputStream dos = new DataOutputStream(fos);
dos.writeInt(12);
dos.writeDouble(2.23d);
dos.writeBoolean(true);
dos.writeUTF("java 數據流測試#");
fos.close( );
FileInputStream fis = new FileInputStream("text.txt");
DataInputStream dis = new DataInputStream(fis);
System.out.println(dis.readInt( ) );
System.out.println(dis.readDouble( ) );
System.out.println(dis.readBoolean( ) );
System.out.println(dis.readUTF( ) );
fis.close( );
} }
輸出結果:
JAVA基礎——數據流