DataOutputStream DataInputStream转换流
使用场景:
注意事项:
- 需要读写
int
,double
,String
等类型(不用自己转字节!) - 跨平台数据传输(比如网络协议)
-
常用方法:
dos.writeInt(100)
→ 写入intdos.writeUTF("你好")
→ 写入字符串(UTF-8编码)dis.readInt()
→ 读取intdis.readUTF()
→ 读取字符串- 读写顺序必须一致!如果先写int再读String,会乱套🤯
- 字符串用
writeUTF
和readUTF
,不是普通的write
! -
// 写入一个int和一个字符串 try (DataOutputStream dos = new DataOutputStream(new FileOutputStream("data.bin"))) {dos.writeInt(42); // 写入整数dos.writeUTF("Java小白"); // 写入字符串 }// 读取时必须按写入顺序读! try (DataInputStream dis = new DataInputStream(new FileInputStream("data.bin"))) {int num = dis.readInt(); // 42String name = dis.readUTF(); // "Java小白"System.out.println(num + " " + name); }