数据流
1.数据流分类
可以实现将数据和其类型一并读写,分为数据输出流DataOutputStream和数据输入流DataInputStream
数据输出流:DataOutputStream继承OutputStream,因此支持写字节的相关方法
数据输入流:DataInputStream继承InputStream,因此支持读字节的相关方法
2.DataOutputStream字节数据输出流
- public DataOutputStream(OutputStream is); 创建对象,通过封装的字节输出流关联文件
- public final void writeInt(int data);
- public final void writeDouble(int data);
- public final void writeBoolean(int data);
- public final void writeUTF(String data);
- public void write(字节数据);
package com.demo13_IO流_数据流;
import java.io.DataOutputStream;
import java.io.FileOutputStream;
public class Demo01 {
public static void main(String[] args) throws Exception {
//public DataOutputStream(OutputStream is); 创建对象,通过封装的字节输出流关联文件
DataOutputStream dos = new DataOutputStream(new FileOutputStream("day10\\Demo01.txt"));
//public final void writeInt(int data);
dos.writeByte(10);
//public final void writeDouble(int data);
dos.writeInt(100);
//public final void writeBoolean(int data);
dos.writeBoolean(false);
//public final void writeUTF(String data);
dos.writeUTF("传智教育");
//释放资源
dos.close();
}
}
3.DataInputStream字节数据输入流
- public DataInputStream(InputStream is); 创建对象,通过封装的字节输入流关联文件
- public final void readInt(int data);
- public final void readDouble(int data);
- public final void readBoolean(int data);
- public final void readUTF(String data);
- public void read(字节数据);
package com.demo13_IO流_数据流;
import java.io.DataInputStream;
import java.io.FileInputStream;
public class Demo02 {
public static void main(String[] args) throws Exception {
//public DataInputStream(InputStream is); 创建对象,通过封装的字节输入流关联文件
DataInputStream dis = new DataInputStream(new FileInputStream("day10\\Demo01.txt"));
//public final void readInt(int data);
System.out.println(dis.readByte());
//public final void readDouble(int data);
System.out.println(dis.readInt());
//public final void readBoolean(int data);
System.out.println(dis.readBoolean());
//public final void readUTF(String data);
System.out.println(dis.readUTF());
//释放资源
dis.close();
}
}
注意:数据流写出的数据直观是看不懂的(用于数据存储),需要用字节数据输入流读,按照顺序怎么写的怎么读,否则报错