1. IO 流概述
什么是 IO 流?
IO 流是存取数据的解决方案,
在计算机中数据存放在硬盘的文件中,如果程序需要使用这些数据时,就会从文件中把数据读取到内存中,内存中数据的特点是不能永久化存储,程序停止,数据丢失。那么如何持久的保存程序中的数据呢?
程序中的数据会通过写入的方式存储到硬盘的文件中,特点是可以长期的存储,不会随着程序的终止而丢失,那么 Java 语言是怎样读取和写入数据的呢?
这里就引出了流的概念,流是一个抽象的概念,我们把数据在两设备的传输抽象为流的方式,流的本质是数据传输,根据数据传输特性将流抽象为各种类,方便更直观的进行数据操作。
2. IO 流分类
Java中的流可以从不同的角度进行分类,按照流动方向可以分为输入流和输出流,输入流用于数据的读取,输出流用于数据的写出。按照操作对象的不同可以分为字节流和字符流,字节流可以操作所有类型的文件,例如:文本,图像,音频等,字符流用于操作纯文本文件。
Java中有四种顶层的流 InputStream