FileInputStream和FileOutputStream文件io

来源:互联网 发布:java 字符编码转换 编辑:程序博客网 时间:2024/05/01 11:22

文件IO总结:

实现:io的直接子类FIO;

FileInputStream和FileOutputStream 是一种字节流,与之对应的FileReader,FileWriter是字符流

1. 字节流与字符流:

字节流:一次读写一个字节或从[]byte(缓冲区)里一次读取更多的字节;

字符流:一次读写一个字符或从[]char(缓冲区)里一次读取更多的字符;

都包括节点流与处理流:

节点流:不经过缓存区的,直接操作文件本身(当没有关闭io对象的时候,文件依然 存在输出的内容)

处理流:经过缓存区(关闭io或强制清空缓存(flush方法)的时候才有内容输出)

理解 字节流 的时候,可以用[]byte 为代表理解 ;理解 字符流 的时候,可以看成是String

字节流和字符流的相互转换:[]byte和String类型的相互转换


2.字节流对文件的读写(copy)

创建文件读对象in调用read方法(in.read()),创建文件的写对象out调用write方法(out.write());

read,write方法重载了三种方法

read:返回值:读取的字节个数(int),读到最后返回-1(可以利用这个返回值实现copy文件的字节数与原文件大小一样)。






0 0
原创粉丝点击