JavaIO 的体系结构图
File类(表示文件)
要在java程序中操作硬盘上的文件,首先需要在程序中表示一个对应的文件。
一个File类的对象表示硬盘上的一个文件或目录(文件夹)
操作方法:
判断功能
获取功能
创建,删除功能
File类只能表示文件,不能对文件内容进行读写操作
I(input) O(output)——输入和输出
按照读写的单位分为:
字节流(一次读写一个字节): 使用较多
字节输入流 从硬盘向程序中读数据
InputStream
字节输出流 从程序中向硬盘上写数据
OutputStream
节点流和处理流
节点流: FileInputStream,FileOutputStream
流对象中封装的是的数据源. 直接用来读文件的
处理流: BufferedInputStream,BufferedOutputStream(提供内部缓冲区功能)
ObjectInputStream,ObjectOutputStream
流对象中包含的是其他流对象,可以提供一些其他操作.
字符流(一次读写一个字符):只能读纯文本文件
字符输入流 Reader
InputStreamReader 把原始的字节转为字符 将1个汉字转为一个字符编码
FileReader
字符输出流 Writer
OutputStreamWriter
FileWriter
字符处理流:BufferedReader,BufferedWriter 提供对数据的缓冲功能
print流 没有输入,只是从程序中向外输出
PrintStream 打印字节流
PrintWriter 打印字符流
对象输入,输出流(对象序列化和对象反序列化)
就是把程序运行时所产生的对象信息(内存中存储) 输出到一个文件中(实现对象信息的持久化保存) 称为对象序列化