IO流概述及其分类

IO流的概述

IO流用来处理设备之间的数据传输,Java对数据的操作是通过流的方式,Java用于操作流的对象都在IO包中java.io

IO流的分类

1.按照数据流向,站在内存角度,

输入流,读入数据

输出流,写出数据

2.按照数据类型

字节流:可以读写任何类型的文件,比如音频,视频,文本文件

什么情况下使用哪种流呢?

如果数据所在的文件通过windows自带的记事本打开并能够读懂里面的内容就用字符流,其他用字节流。

IO流基类概述

1.字节流的抽象基类

InputStream,OutputStream

2.字符流的抽象基类

Reader,Writer

(由这四个类派生出来的子类名称都是以其父类名作为子类名的后缀)

FileOutputStream构造方法

FileOutputSream(File file )

FileOutputSream(String name )

FileOutputStream注意事项:

1.创建字节输出流做了几件事情

a.调用系统资源创建.txt文件

b.创建了一个fos对象

c.把fos对象指向这个文件

2.为什么一定要close( )?

a.通知系统释放关于管理.txt文件的资源

b.让IO流对象变成垃圾,等待垃圾回收器对其回收

FileOutputSream的三个write( )方法

1.public void write(int b):写一个字节,超过一个字节,砍掉前面的字节

2.public void write(byte[ ] b):写一个字节数组

3.public void write(byte[ ] b,int off,int len):写一个字节数组的一部分

FileInputSream读取数据一次一个字节

int read( ):一次读取一个字节,如果没有数据,返回的就是-1

FileInputSream读取数据一次一个字节数组

int read( byte[ ] b):一次读取一个字节数组,返回的int类型的值表示的意思就是读取到的字节的个数,如果没有数据了就返回-1

BufferOutputStream写出数据

缓冲思想:字节流一次读写一个数组的速度明显比一次读取一个字节的速度快很多,这是加入了数组这样的缓冲区效果,java本身在设计的时候也考虑到了这样的设计思想,所以提供了字节缓冲区流

BufferOutputStream(OutputStream out )

BufferInputSream读取数据

BufferInputSream(InputSream in )

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值