学习文件流
文件流按照读取或写入的单位(字节数)大小来区分
字节型文件流(1字节)
FileInputStream/FileOutputStream
字符型文件流(2-字节–1字符)
FileReader/FileWriter
字节型文件输入流
了解一下继承关系 inputStream类 字节型输入流的父类
创建对象
调用一个带File类型的构造方法
调用一个带String类型的构造方法
常用的方法
int code = read(); 每次从流管道中读取一个字节 返回字节码的code码
int count = read(byte[] )每次从流管道中读取若干字节 存入数组内 返回有效元素
skip(long n)跳过几个字节 读取
多线程————————>利用几个线程同时读取文件
*close() 将流管道关闭---必须要做 最好放在fianlly里 注意代码的健壮性 严谨性
字节型文件输出流
FileOutput 将数据写入文件中
java.io
继承OutputStream 所有字节输出型的父类
创建对象
调用一个带file参数 还有file Boolean重载
调用一个带String参数 还有String boolean 重载
常用方法
writr(int code);将给定的code对应的字符写入文件“=”
write(byte[]) 将数组中的全部字节写入文集 getByte()
flush() 将管道内的字节推入(刷新)文件
close() 注意在finaly类中关闭
字符型文件流
FileReader FileWriter
只能操作存文本文件(右键打开方式 记事本打开 能看懂).txt
FileReader
java.io包
继承 InputStreamReader Reader
构造方法
常用
read()
read(char[])
FileWriter
java.io包
继承OutputStreamWriter Writer
构造方法 带file参数 带file,boolean参数
带String参数 带String,boolean参数
常用方法
writer(int)
writer(char[])
writer(String)
int count = read(char[]);
close() flush()
缓冲流
在管道中内增加缓存的数据
让我们使用流读取的文字更加流畅
高级流—–》创建通过低级流
BufferedInputStream/BufferedOutputStream
BufferedReader/BufferedWriter
BUfferedInPutStream
构建方式 使用低级流构建
基本上使用与低级流完全一致
read()skip()available()close()
BufferedOutStream
构建方式 使用低级流构建 注意缓冲流构建的时候没有boolean类型的参数
基本使用与低级流的方法完全一致
read()skip()available()close()
BufferedOutputStream
对象流
对象的序列化/反序列化
为什么要有文件
文件永久保存信息 很多数据存入文件-----数据持久化