Java IO流的种类

IO流是什么

Java IO(Input/Output)是Java提供的用于读取和写入数据的输入/输出库,它用于处理与磁盘、网络、控制台等设备的数据交换。IO按流向可以划分为输入流和输出流两类,按类型可分为字节流和字符流。

1、字节流(Byte Stream)

字节流用于读取和写入字节数据。Java提供了两个抽象类:InputStream和OutputStream,分别用于读取和写入字节数据。
InputStream和OutputStream的子类有FileInputStream、FileOutputStream、BufferedInputStream、BufferedOutputStream等。另外,Java还提供了对象流(Object Stream)用于读取和写入Java对象。

2、字符流(Character Stream)

字符流用于读取和写入字符数据。Java提供了两个抽象类:Reader和Writer,分别用于读取和写入字符数据。Reader和Writer的子类有FileReader、FileWriter、BufferedReader、BufferedWriter等。另外,Java还提供了处理文本文件的Scanner类和Formatter类,可以方便地进行文本文件的读写。

3、字节缓冲流(Byte Buffer Stream)

字节缓冲流用于提高字节流的效率。Java提供了两个类:BufferedInputStream和BufferedOutputStream,分别用于缓冲读取和写入字节数据。

4、字符缓冲流(Character Buffer Stream)

字符缓冲流用于提高字符流的效率。Java提供了两个类:BufferedReader和BufferedWriter,分别用于缓冲读取和写入字符数据。

5、数据流(Data Stream)

数据流用于读取和写入Java基本类型数据和字符串。Java提供了两个类:DataInputStream和DataOutputStream,分别用于读取和写入Java基本类型数据和字符串。

6、对象流(Object Stream)

对象流用于读取和写入Java对象。Java提供了两个类:ObjectInputStream和ObjectOutputStream,分别用于读取和写入Java对象。

7、序列化流(Serialization Stream)

序列化流用于将Java对象序列化为字节流,并将字节流反序列化为Java对象。Java提供了两个接口:Serializable和Externalizable,分别用于实现Java对象的序列化和反序列化。

你可能感兴趣的:(Java,java)