Java中数据输入输出流——DataInputStream和DataOutputStream

本文介绍了Java中的DataInputStream和DataOutputStream,它们分别用于数据的输出和输入。DataOutputStream允许将基本Java数据类型写入输出流,而DataInputStream则可以以机器无关的方式读取这些数据。文章通过例子展示了这两个类的使用,输出结果为0.4683893857027681、true、1000和2000。同时,文章中提到对于多线程访问,这两个类可能需要额外的线程安全性考虑。
摘要由CSDN通过智能技术生成

首先给大家分享一个巨牛巨牛的人工智能教程,是我无意中发现的。教程不仅零基础,通俗易懂,而且非常风趣幽默,还时不时有内涵段子,像看小说一样,哈哈~我正在学习中,觉得太牛了,所以分享给大家!点这里可以跳转到教程

               

一、基本概念

DataOutputStream

数据输出流允许应用程序以适当方式将基本 Java 数据类型写入输出流中。然后应用程序可以使用数据输入流将数据读入。

DataInputStream

数据输入流允许应用程序以与机器无关方式从底层输入流中读取基本 Java 数据类型。应用程序可以使用数据输出流写入稍后由数据输入流读取的数据。对于多线程访问不一定是安全的。 线程安全是可选的,它由此类方法的使用者负责。

 

二、例子

/** * 必须先使用DataOutputStream写入数据,然后使用DataInputStream读取数据方可。 *  * @author xy *  */public class TestClass{ public static void main(String[] args) throws Exception {  TestClass t = new TestClass();  t.write();  t.read(); } public void write() throws Exception {  String path = this.getClass().getClassLoader().getResource("test.txt").toURI().getPath();  OutputStream os = new FileOutputStream(path);  DataOutputStream dos = new DataOutputStream(os);  dos.writeDouble(Math.random());  dos.writeBoolean(true);  dos.writeInt(1000);  dos.writeInt(2000);  dos.flush();  os.close();  dos.close(); } public void read() throws Exception {  InputStream instream = this.getClass().getClassLoader().getResourceAsStream("test.txt");  DataInputStream dis = new DataInputStream(instream);  double d = dis.readDouble();  boolean b = dis.readBoolean();  // 先写的先被读出来  int i1 = dis.readInt();  int i2 = dis.readInt();  instream.close();  dis.close();  System.out.println(d);  System.out.println(b);  System.out.println(i1);  System.out.println(i2); }}

输出结果

0.4683893857027681
true
1000
2000

           

浏览人工智能教程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值