File文件对象,new File(“地址”)新建文件对象,但要在使用这个文件对象的时候才会真正创建文件,例如在new FileOutputStream(file)的时候才会创建。
FileOutputStream文件输出流对象,new FileOutputStream(file)新建文件输出流对象,用write()方法写入字节数据,一般用于写入非文本类数据,如图片。
BufferedOutputStream提高写字节流的效率。
FileWriter 用于写入字符流的便捷类,专门用于写文本,在用write()方法写入文件后,要调用flush()刷新方法刷新文本到文件。
BufferedWriter用于写入字符,用write()写入后要调用flush()刷新,newLine()为写入换行。
FileInputStream用于读取字节流。
BufferedInputStream提高读取字节流的效率。
FileReader用于读取字符流。
BufferedReader读取字符输入流中的文本,用readLine()输出文本。
写文件流程:
新建File对象——》字节流用FileOutputStream——》用BufferedOutputStream提高效率
——》字符流(文本)用FileWriter——》用BufferedWriter提高效率
读文件流程:
新建File对象——》字节流用FileInputStream——》用BufferedInputStream提高效率
——》字符流(文本)用FileReader——》用BufferedReader提高效率
注意:用readLine()方法读取文本数据时,只会读取一行,需要用循环来进行完全读取,跳出循环条件为readLine()==null
使用完流后要关闭,直接关闭缓存流即可,即BufferedOutputStream,BufferedInputStream,BufferedWriter,BufferedReader