DataIO & ByteArrayIo

  • DataInputStream和DataOutputStream分别继承自InputStream和OutputStream,它属于处理流,需要分别”套接“在InputStream和OutputStream类型的节点流上
  • DataInputStream和DataOutputStream提供了可以存取与机器无关的Java原始类型数据的方法
  • DataInputStream和DataOutputStream的构造方法为:
    • DataInputStream(InputStream in)
    • DataOutputStream(OutputStream out)
import java.io.*;

public class TestFileInputStream {

    public static void main(String[] args) {
        ByteArrayOutputStream baos = 
                new ByteArrayOutputStream();
        DataOutputStream dos = 
                new DataOutputStream(baos);
        try {
            dos.writeDouble(Math.random());
            dos.writeBoolean(true);
            ByteArrayInputStream bais = 
                    new ByteArrayInputStream(baos.toByteArray());
            System.out.println(bais.available());//bais中有多少字节
            DataInputStream dis = 
                    new DataInputStream(bais);
            System.out.println(dis.readDouble());//先写的先读
            System.out.println(dis.readBoolean());
            dos.close();
            dis.close();
        }catch(IOException e) {
            e.printStackTrace();
        }
    }
}

 下面给一张图,帮助理解

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏xdecode

Protocol Buffer序列化对比Java序列化.

初识 Protocol Buff是谷歌推出的一种序列化协议. 而Java序列化协议也是一种协议. 两者的目的是, 将对象序列化成字节数组, 或者说是二进制数据,...

2185
来自专栏Netkiller

Java 二进制文件操作大全

中国广东省深圳市望海路半岛城邦三期 518067 +86 13113668890 <netkiller@msn.com>

3533
来自专栏HansBug's Lab

3211: 花神游历各国

3211: 花神游历各国 Time Limit: 5 Sec  Memory Limit: 128 MB Submit: 1042  Solved: 381 ...

2665
来自专栏小樱的经验随笔

Educational Codeforces Round 21(A.暴力,B.前缀和,C.贪心)

A. Lucky Year time limit per test:1 second memory limit per test:256 megabytes i...

2807
来自专栏Android知识点总结

Java总结IO之总集篇

字符流和字节流向来各行其事,很少有交集。 但Reader和Writer有两个奇子,名叫InputStreamReader(男)和OutputStreamWri...

1245
来自专栏十月梦想

JavaScript一维数组遍历

通过for循环获取数组的下标循环输出数组,和php的遍历类似,这里for循环遍历一维数组

742
来自专栏Hongten

原来还有这样的记词方法_Java版记不规则动词_博主推荐

昨天在看一本英语书的不规则动词的时候,突然产生的灵感:就是想把这样记单词简单方式,用程序代码实现,然后,使用户可以与之进行交互

862
来自专栏Hongten

java的poi技术读取Excel数据到MySQL

这篇blog是介绍java中的poi技术读取Excel数据,然后保存到MySQL数据中。

943
来自专栏菩提树下的杨过

恶心的0.5四舍五入问题

四舍五入是财务类应用中常见的需求,按中国人的财务习惯,遇到0.5统一向上进位,但是c#与java中默认的却不是这样。 见c#代码: 1 stat...

20010
来自专栏Netkiller

《Netkiller Java 手札》之 二进制文件操作大全

中国广东省深圳市望海路半岛城邦三期 518067 +86 13113668890 <netkiller@msn.com>

290

扫码关注云+社区