今天又是一个学习JAVA的好日子!
File类:
文件和目录路径名的抽象表示形式。
IO:
目的:读写文件中的内容
流:一连串流动的数据,先进先出的方式传输信息,管道
数据源 目的地–>以程序为中心划分读入写出
流的分类:
按照流向分:
- 输入流
- 输出流
按操作单元分: - 字节流
- 字符流
按功能分: - 节点流
- 功能流
分类之间是相辅相成的,互不冲突
字节流(重要):是万能的 功能:节点流 - InputStream 字节输入流 此抽象类是表示字节输入流的所有类的超类。
- FileInputStream 从文件系统中的某个文件中获得输入字节。
- OutputStream 字节输出流
此抽象类是表示输出字节流的所有类的超类
FileOutputStream文件输出流是用于将数据写入 File
文件的拷贝 :关闭原则—— 先打开的后关闭,后打开的先关闭
字符流 :只能读写纯文本内容 功能分:节点流
- Reader 字符输入流 FileReader 文件字符输入流
- Writer 字符输出流 FileWriter
字符缓冲流 ——不能发生多态,因为存在新增方法
- BufferedReader 字符输入缓冲流 新增方法 readLine() 读取一行
- BufferedWriter 字符输出缓冲流 新增方法 newLine() 写出换行符
字符流 字节流 -->节点流
包裹节点流,在节点流之上–>功能流|处理流
处理流:增强功能,提高性能的作用,在节点流之外才能使用,不能代替节点流
缓冲流:提高性能
字节缓冲流 BufferedInputStream BufferedOutputStream 无新增方法
Data流 ->基本数据类型流,读入写出带有基本数据类型的数据+字符串数据
- 功能流,必须要包裹节点流使用(字节流)
- DataInputStream 新增方法 readXxx()
- DataOutputStream 新增方法 writeXxx()