Java中9种IO的读取方式

声明:因读后觉得本文分析IO流很清晰,故转载方便自己查阅。原文地址:https://www.cnblogs.com/Buffalo-L/p/4446379.html

数据的读写,按照数据类型可以分为两种:字符流和字节流(二者区别?)。所以数据读取方式按照数据类型也可以分为两类:字节流的读取和字符流的读取。

一、字节流读取操作:

|-----1、FileInputStrem和FileInputStream字节流逐字节读写(速度最慢)

 

|-----2、FileInputStrem和FileInputStream构造一个缓冲数组进行读写(速度提升)

 

|-----3、利用字节缓冲区流BufferedInputStream和BufferedOutputStream来直接逐字节读写(速度较快)

 

|------4、利用字节缓冲区流BufferedInputStream和BufferedOutputStream通过构造一个缓冲数组进行读写(速度最快)

 

|-----5、利用字符流InputStreamWriter和 OutputStreamWriter直接按字节读取

拷贝一个的视频文件,

但是呢,这样的结果是拷贝之后的视频,总大小减小了,原因是直接用的是字符流拷贝导致的,所以对于视频、音乐这些多媒体文件来说,要用字节流进行拷贝。

 

|-----6、字符流InputStreamWriter和 OutputStreamWriter直接用缓冲区数组读写

同样拷贝上述视频文件,

 

|-----7、字符缓冲流BufferedWriter和BufferedReader直接逐字节读写

拷贝上述视频文件,

 

|-----8、字符缓冲流BufferedWriter和BufferedReader按照数组大小逐块读写

拷贝上述视频文件,

 

|-----9、字符缓冲流BufferedWriter和BufferedReader按逐行读写(应用于文本读写)

总结:

复制文本文件有几种方式?

                 9种

复制图片文件有几种方式?

                 4种

         

他们各自的优缺点是什么?

         字符流按字符处理数据,速度较之于同原理的字节流快,但是使用范围较小,仅限文本文件;

    字节流处理范围广,文本,音频,视频都可以处理。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值