Java -IO流复习回顾

本文详细介绍了Java中的流分类(按方向和代为划分),包括输入流和输出流、字节流与字符流的区别。重点讲解了字节流的使用,如FileOutputStream的操作,以及如何处理异常和字符流的引入。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

总体结构

 流的分类

按方向分

  • 输入流: 将 < 存储设备 > 中的内容读入到 < 内存 > 中.
  • 输出流: 将 < 内存 > 中的内容写入到 < 存储设备 > 中.

按代为分

  • 字节流: 以字节为单位, 可以读写所有数据.
  • 字符流: 以字符为单位, 只能读写文本数据.

 IO流的作用

用来处理设备间数据传输问题

常见的应用:文件复制、文件上传、文件下载

IO流的使用场景

     如果操作的是纯文本文件,优先使用字符流

     如果操作的是二进制文件,优先使用字节流

     如果不确定,则优先使用字节流

字节流

字节流抽象基类

inputstream

 

outputstream

 

字节流写数据 

基本步骤

创建FileOutputStream对象,关联到一个文件路径

调用write()方法,写出数据

调用close()方法,释放资源

 打开文件,查看内容

三种方式

write(int b)                一次写一个字节数据

write(byte[] arr)                 一次写一个字节数组

write(byte[] arr,int index,int len)     写字节数组的一部分

两个问题

1.如何写换行:调用write()方法,写出”\r\n”.getBytes()即可

2.如何文件续写:使用FileOutputStream(String name,boolean append)构造方法,构造方法中第二个参数传递true,则在文件末尾继续写数据 

异常处理

字节流写数据同时处理异常的重要步骤

将创建字节流对象和写出数据的代码放在try中

在catch中捕获IOException异常

 在finally中进行释放资源

字符流

由于字节流操作中文不是特别的方便,所以Java就提供字符流

字符流 = 字节流 + 编码表

字符输入流(Reader)

 

字符输出流(Writer) 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值