Java专属数据输入输出流

今天我们看一下这个专属数据的流DataInputStream DataOutputStream
这两个流是包装流,专门用于给数据进行输入输出的流,我们可以看一下这个包装流对于数据量类型的强大功能处理,这两个流不仅能对数据类型的元素进行输入输出,还能保存其类型,也就是说我们不仅能保存数据还能保存数据的类型,并且用其他的流无法进行处理,且数据的存取的规则顺序必须一致,才能正确的读取内容
我们看一下实例:

import java.io.*;

public class dataStreamTest {
    public static void main(String[] args) {
        FileInputStream fis=null;
        FileOutputStream fos=null;
        DataInputStream dis=null;
        DataOutputStream dos=null;
        try {
            fos=new FileOutputStream("test.txt");
            dos=new DataOutputStream(fos);
            dos.writeByte(12);
            dos.writeInt(1234);
            dos.writeDouble(234.342);

            fis= new FileInputStream("test.txt");
            dis=new DataInputStream(fis);
            System.out.println(dis.readByte());
            System.out.println(dis.readInt());
            System.out.println(dis.readDouble());

        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }finally {
            if (dis!=null) {
                try {
                    dis.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            if (dos!=null){
                try {
                    dos.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}

结果展示:
在这里插入图片描述
test.txt文件
在这里插入图片描述
我们从上述的代码中可以看到,我们对test.txt文件进行写入了数据并且指明了写入数据的类型,然后进行读取打印,然而我们可以看到testl.txt文件中的内容我们是无法进行查看的因为我们用专属的DataOutputStrean写出的内容只有用专属的DateInputStream读取才能查看到数据内容,并且我们写入的元素顺序和读取的元素顺序及其类型必须一致,必须一致:
写入顺序:
dos.writeByte(12);
dos.writeInt(1234);
dos.writeDouble(234.342);
读取顺序:
dis.writeByte(12);
dis.writeInt(1234);
dis.writeDouble(234.342);
所以这个流用的比较少,可能加密处理可能会多一些,我们了解一下吧!!!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值