一、IO流
1.1 流
1.2 流的分类
根据数据的流向分为:输入流和输出流
- 输入流:把数据从其他设备上读取到程序中的流
- 输出流:把数据从程序中写到其他设备上的流
根据数据的类型分为:字节流和字符流
- 字节流:以字节为单位(byte),读写数据的流
- 字符流:以字符为单位(byte),读写数据的流
输入流 | 输出流 | |
---|---|---|
字节流 | 字节输入流 | 字节输出流 |
字符流 | 字符输入流 | 字节输入流 |
- 字节输入流:在程序中,以字节的方式,将设备(文件、内存、网络等)中的数据读取出来
- 字节输出流:在程序中,以字节的方式,将数据写到设备中
- 字符输入流:在程序中,以字符的方式,将设备(文件、内存、网络等)中的数据读取出来
- 字符输出流:在程序中,以字符的方式,将数据写入设备中
字节是byte,字符是char
主要内容:
-
java.io.File类的使用
File:指计算机操作系统中的文件和文件夹
-
IO原理及流的分类
IO:input 和 output 输入输出
流:通过程序把一个图片放到一个文件夹 --》 放的过程:先把图片转化成一个数据集(如二进制),
把这些数据一点一点传到文件夹,这个传递的过程类似于水的流动,我们可以称这个整体的数据集
是一个数据流
-
文件流 --》 数据流的读写基于文件的操作
- FileInputStream
- FileOutputStream
- FileReader
- FileWriter
-
缓冲流 --》 数据流的读写基于内存的操作
- BufferdeInputStream
- BufferdeOutputStream
- BufferedReader
- BufferedWriter
-
转换流
- InputStrwamReader
- OutputStreamWriter
-
标准输入/输出流
-
打印流 ==> System.out.println
- PrintStream
- PrintWeiter
-
数据流
- DataInputStream
- DataOutputStream
-
对象流 --涉及序列化和反序列化 ==> 把一个对象转换成数据流进行读写
- ObjectInputStream
- ObjectOutputStream
-
随机存取文件流 ==> 由开发人员任意定义
随机:例如:一个TXT文件,其中有100行数据,可以直接读取第50行的数据,
也可以在第89行插入数据,这个才是随机的概念
- RandomAccessFile