说一说IO流你知道多少?

IO流的分类

按按数据流的方向分为 输入流、输出流
输入流:从别的地方获取字节或者字符来输入到我们的程序当中。
输出流:从我们的程序中输出到别的地方。
按处理数据单位不同分为 字节流、字符流
字节流:每次读取(写出)一个字节,当传输的资源文件有中文时,就会出现乱码。
字符流:每次读取(写出)两个字节,有中文时,使用该流就可以正确传输显示中文。
IO流分为四个抽象父类
InputStream,OutputStream (字节流)
Reader,Writer (字符流)

InputStream子类:

 - FileInputStream:
读取文件的方法:
	read():读取的是一个字节
	read(byte[] buf):读取数据到字节数组中
 - DataInputStream:处理基本数据类型
 - ObjectInputStream:处理自定义对象
 - BufferedInputStream
 - System.in

        
OutputStream子类:

 - FileOutputStream: 
写入文件的方法:
	write():读取的是一个字节
	write(byte[] buf):读取数据到字节数组中
 - DataOutputStream:处理基本数据类型
 - ObjectOutputStream:处理自定义对象
 - BufferedOutputStream
 - PrintStream (System.out是PrintStream的子类,不是OutputStream子类)

Reader子类:

 - InputStreamReader (FileReader是InputStreamReader的子类)
 - BufferedReader:
BufferedReader直接继承于Reader但是在使用的时候通常要添加InputStreamReader作为构造方法的参数
(在处理字节流的时候效率比较低,要把字节流准换位字符流)

Writer子类:

 - OutputStreamWriter (FileWriter是OutputStreamWriter的子类)
 - BufferedWriter:
 - PrintWrite:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值