Java 中的数据流:

  对于某问题:将一个 long 类型的数据写到文件中,有办法吗?

    转字符串 → 通过 getbytes() 写进去,费劲,而且在此过程中 long 类型的数需要不断地转换.

现在,Java 中的数据流能够很好的解决这个问题(不需要转换,直接写进去)

1. DataInputStream 与 DataOutputStream 分别继承自 InputStream、OutputStream, 它属于处理流,需要分别套接在 InputStream、OutputStream 类型的节点流上面.

2. DataInputStream 与 DataOutputStream 提供了可以存取与机器无关的 java 原始类型数据(如:int, double 等)的方法.

3. DataInputStream 与 DataOutputStream 的构造方法为:

  DataInputStream(InputStream in )

  DataOutputStream(OutputStram out)

【注】UTF(Unicode 字符串):网络上经常使用;UTF-8 比 UTF-16 省空间.

Demo_1:

import java.io.*;
class Test {
public static void main(String[] args) {
ByteArrayOutputStream baos = new ByteArrayOutputStream(); // 首先在内存上面分配一个字节数组,某根管道接上去(接在内存上面的一块内容上面)
DataOutputStream dos = new DataOutputStream(baos); // baos管道不好用,外那再套接一根管道dos
try {
dos.writeDouble(Math.random());
dos.writeBoolean(false);
ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray()); // 通过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();
baos.close();
dis.close();
bais.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}

运行结果:

9
0.1088353250890215
false

Java中I/O流之数据流的更多相关文章

  1. Java中的IO流大体介绍

    由于Java中的IO流是在是知识点繁多,所以我大约花了1周的时间将其整理起来.但是整理起来后并不是将完事了,我还是要分字节流和字符流来讲述.然后字节流和字符流中还有是否带有缓冲流. 讲述完IO流后我将 ...

  2. java中的IO流

    Java中的IO流 在之前的时候我已经接触过C#中的IO流,也就是说集中数据固化的方式之一,那么我们今天来说一下java中的IO流. 首先,我们学习IO流就是要对文件或目录进行一系列的操作,那么怎样操 ...

  3. java中的缓冲流BufferedWriter和BufferedReader

    java中的缓冲流有BufferedWriter和BufferedReader 在java api 手册中这样说缓冲流: 从字符输入流中读取文本,缓冲各个字符,从而实现字符.数组和行的高效读取.可以指 ...

  4. java 中 “文件” 和 “流” 的简单分析

    java 中 FIle 和 流的简单分析 File类 简单File 常用方法 创建一个File 对象,检验文件是否存在,若不存在就创建,然后对File的类的这部分操作进行演示,如文件的名称.大小等 / ...

  5. Java中的IO流总结

    Java中的IO流总结 1. 流的继承关系,以及字节流和字符流. 2. 节点流FileOutputStream和FileInputStream和处理流BufferedInputStream和Buffe ...

  6. Java中的IO流,Input和Output的用法,字节流和字符流的区别

    Java中的IO流:就是内存与设备之间的输入和输出操作就成为IO操作,也就是IO流.内存中的数据持久化到设备上-------->输出(Output).把 硬盘上的数据读取到内存中,这种操作 成为 ...

  7. Java中的IO流(五)

    上一篇<Java中的IO流(四)>记录了一下Properties类,此类不属于IO流,它属于集合框架.接下来说一下IO流中的其它流 一,打印流PrintStream PrintStream ...

  8. Java中的IO流(六)

    上一篇<Java中的IO流(五)>把流中的打印流PrintStream,PrintWriter,序列流SequenceInputStream以及结合之前所记录的知识点完成了文件的切割与文件 ...

  9. JAVA 中的IO流

    Java中的IO流是用来处理设备与设备之前的数据传输,在java中以流的形式传输.流分为两类:字节流和字符流. 字节流:InputStream,OutPutSteam.(计算机内的数据都是以字节存储的 ...

随机推荐

  1. sql查询关于时间的一些汇总

    今天的所有数据:select * from 表名 where DateDiff(dd,datetime类型字段,getdate())=0 昨天的所有数据:select * from 表名 where ...

  2. H5混合开发进阶之inspect调试

    h5界面嵌套在原生app内部的时候,需要调用原生的方法,传递数据.中间难以调试代码,. 用google的 inspect调试.查看数据的传输方式. 1.adb连接正常,打开手机USB调试 2.第一次使 ...

  3. 剑指Offer-迭代

    1.大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0) 备注:斐波那契数列指的是这样一个数列从第3项开始,每一项都等于前两项之和. public st ...

  4. PHP文档生成器(PHPDoc)的基本用法

    目录 PHP文档生成器(PHPDoc)的基本用法 PHPDoc概述 安装 PHPDoc注释规范 页面级别的注释 代码级别的注释 生成API文档 额外软件 PHP文档生成器(PHPDoc)的基本用法 P ...

  5. yii学习笔记(6),连接数据库,创建活动记录类

    创建数据库用于测试 配置数据库连接 打开yii的配置文件目录下的数据库配置文件config/db.php <?php return [ 'class' => 'yii\db\Connect ...

  6. Simple, Poetic, Pithy

    源自:Rob Pike points out Simple, Poetic, Pithy Don't communicate by sharing memory, share memory by co ...

  7. Java-谈谈对Java平台的理解

    问题 谈谈对 Java 平台的理解 Java是解释执行的 这句话对么 程序的编译与解释有什么区别 Java 平台的了解 Java的主要特点是两个, 编写一次到处运行 Write once, run a ...

  8. 笔记-django- HttpRequest/Response

    笔记-django- HttpRequest/Response 1.      HttpRequest/Response When a page is requested, Django create ...

  9. 2038: [2009国家集训队]小Z的袜子(hose)

    2038: [2009国家集训队]小Z的袜子(hose) Time Limit: 20 Sec  Memory Limit: 259 MBSubmit: 9472  Solved: 4344 Desc ...

  10. PS 证件照换颜色

    1.打开要修改的图片,然后先Ctrl+J备份一份 2.点击魔法棒,点击要换颜色的地方,如衣服,之后会出现虚线,如果自动选择的不全,可以按住Shift键自行选择区域 3.然后Shift+Fn+F5(由于 ...