IO流
- 输入,硬盘文件到内存文件
读(Read)、输入(Input)、输入流(InputStream)
- 输出,内存文件到硬盘文件
写(Write)、输出(Output)、输入流(OutputStream)
IO Input和Output首字母,通过IO可完成文件的读和写
- IO分类
按照流的方向分输入输出
按照读取方式不同,分一次读一个字节byte(所有文件都能读);一次读一个字符(只能读普通文本txt,不能读图片、声音、视频、word)
综合分类:输入流、输出流、字节流、字符流(转为读普通文本准备的)
IO流四大家族:InputStream(字节输入流)、OutputStream(字节输出流)、Reader(字符输入流)、Writer(字符输出流),只要以Stream结尾就是字节流,以Reader/Writer结尾就是字符流
- 流的close和flush方法
所有流都是可close()的,所有输出流是可刷新的flush(),强行将管道所有数据输出到文件,没有flush可能会丢数据
- 需要掌握的流
文件专属:FileInputStream/FileOutputStream/FileReader/FileWriter
转换流(将字节流转换为字符流):InputStreamReader/OutputStreamWriter
缓冲流专属:BufferedReader/BufferedWriter/BufferedInputStream/BufferedOutputStream
数据流专属:DataInputStream/DataOutputStream
标准输出流:PrintWriter/PrintStream 输出到控制台
对象专属流(序列化):ObjectInputStream/ObjectOutputStream
- File类
File和IO流四大家族没关系,所以File类不能完成文件的读写
File对象是文件和目录路径名的抽象形式,C:\;C:\Readme.txt 是一个File对象
主要掌握File类中的方法