IO读写小结

分类

从数据来源或者说是操作对象角度看,IO 类可以分为:

1、文件(file):FileInputStream、FileOutputStream、FileReader、FileWriter
2、数组([]):
2.1、字节数组(byte[]):ByteArrayInputStream、ByteArrayOutputStream
2.2、字符数组(char[]):CharArrayReader、CharArrayWriter
3、管道操作:PipedInputStream、PipedOutputStream、PipedReader、PipedWriter
4、基本数据类型:DataInputStream、DataOutputStream
5、缓冲操作:BufferedInputStream、BufferedOutputStream、BufferedReader、BufferedWriter
6、打印:PrintStream、PrintWriter
7、对象序列化反序列化:ObjectInputStream、ObjectOutputStream
8、转换:InputStreamReader、OutputStreWriter
9、字符串(String)Java8中已废弃:StringBufferInputStream、StringBufferOutputStream、StringReader、StringWriter
数据源节点也可以再进行二次处理,使数据更加容易使用,所以还可以划分成节点流和处理流,这里涉及到设计模式,后面会有专门的文章说。

在这里插入图片描述

close和flush

void flush() :刷新输出流,强制缓冲区中的输出字节被写出。
void close() :关闭输出流,释放和这个流相关的系统资源。
节流没有缓冲区,是直接输出的,而字符流是输出到缓冲区的。因此在输出时,字节流不调用colse()方法时,信息已经输出了,而字符流只有在调用close()方法关闭缓冲区时,信息才输出。要想字符流在未关闭时输出信息,则需要手动调用flush()方法。

参考

https://www.jianshu.com/p/715659e4775f

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值