一.概念
流:流动, 流向 从一端移动到另一端,源头与目的地
数据源: 程序与 文件|数组|网络链接|数据库 (以程序为中心)
二.io分类
流向:输入流,输出流
数据:字节流:二进制,可以处理一切文件 包括纯文本 doc 音频,视频等等
字符流:文本文件,只能处理纯文本
功能:节点:包裹源头
处理:增强功能,提供性能
三.字符流与字节流与文件
1.字节流
输入流:InputStream read(byte[] b);read(byte[] b,int off,int len) +close()
FileInputStream()
输出流: OutputStream write(byte[] b);write(byte[] b,int off,int len) +flush()+close();
FileOutputStream()
2.字符流
输入流:Reader read(char[] b);read(char[] b,int off,int len) +close()
FileReader()
输出流: Writer write(char[] b);write(char[] b,int off,int len) +flush()+close();
FileWriter()
四.操作
举例 :搬家 ---》读取文件
1)关联房子 ---》建立与文件的联系
2)选择搬家公司 ---》选择对应流
3)搬家 ---》读取|写出
a).卡车大小 ---》数组大小
b).运输 ---》读取.写出
4)打发搬家公司 ----》释放资源
操作:
1.建立文件与程序的联系
2.选择流
3.读取和写出+选择数组大小(即每次读写的数量)
4.释放资源