1、IO流
输入流、输出流
字节流(早期都是)、字符流(ASCII、GB2312、GBK、UTF-8)(融合了编码表)
2、字符流
Reader Writer
FileWriter Writer的子类
没有不带参数的构造函数,为操纵文件而生,必须有文件
flush()数据放在缓存区里,调用该方法后数据进入目的地
close()也会刷新数据,但是流会关闭
构造函数(URL,boolean)boolean表示是否续写true则续写
windows中\r\n为换行linux中是\n
FileReader Reader的子类
构造函数也得指定文件(必须存在)
read()有很多重载,不带参数读取一个字符,返回值是int文件结束后在读为-1,为文件结尾
read(char[]) 返回值是读取字符个数
一般缓存区定义为1024的整数倍
复制文件
思想是先读出再写入
3、字节流
InputStream OutputStream
4、IO异常处理
IOException
finally里写关闭流动作
close()也会抛出异常
close()之前先判断指针不为空
|
|