在Java中,可从中读出一系列数据的对象称为“输入流(InputStream)”,而能向其中写入一系列数据的对象称为“输出流(OutputStream)”。Java的输出/输入都是通过继承抽象类InputStream和OutputStream(面向字节)、Reader和writer(面向字符)来实现的。
一、IO流对象层次关系
二、IO 基本操作
在java.io包中流的操作主要有字节流、字符流两大类,两者都有输入和输出的操作。在字节流中输出数据主要使用OutputStream类完成,输入使用InputStream类。在字符流中输出主要是使用Writer类完成,输入主要使用Reader类完成。
在Java中IO操作也有相应的步骤,以文件的操作为例,主要的操作流程如下:
(1) 使用File类打开一个文件。
(2) 通过字节流或字符流的子类指定输出位置。
(3) 进行读/写操作。
(4) 关闭输入/输出。
下面分别介绍如何使用字节流或字符流保存或读取数据。
三、字节流
字节流主要存操作byte类型数据,以byte数组为准,主要操作类是OutputStream类和InputStream类。
1.字节输出流:OutputStream
OutputStream是整个IO包中字节输出流的最大父类,此类的定义如下:
public abstract class OutputStreamextends Objectimplements Closeable, Flushable
</