返回
深入浅出 IO 流学习笔记
后端
2024-01-12 04:29:51
IO 流概述
IO 流是指用于读写数据的抽象概念。在 Java 中,IO 流是通过 java.io
软件包中的类实现的。IO 流分为输入流和输出流。
- 输入流:从数据源读取数据的流,例如,从文件、网络等读取数据。
- 输出流:将数据写入到数据目标的流,例如,写入到文件、网络等。
创建 IO 流对象
Java 中提供了多种 IO 类,我们可以使用这些类来创建 IO 流对象。
文件 IO 流对象
操作 | 类名 | 构造函数 | 参数 |
---|---|---|---|
读文件 | FileInputStream |
FileInputStream(String filename) |
文件名 |
写文件 | FileOutputStream |
FileOutputStream(String filename) |
文件名 |
读写文件 | RandomAccessFile |
RandomAccessFile(String filename, String mode) |
文件名,模式 |
网络 IO 流对象
操作 | 类名 | 构造函数 | 参数 |
---|---|---|---|
读网络数据 | SocketInputStream |
SocketInputStream(Socket socket) |
套接字对象 |
写网络数据 | SocketOutputStream |
SocketOutputStream(Socket socket) |
套接字对象 |
IO 流读写操作
读写操作是 IO 流的核心功能。Java IO 流提供了多种读写方法,我们可以使用这些方法来读写数据。
读数据
我们可以使用 read()
、read(byte[] b)
、readLine()
等方法来读数据。
read()
方法:读取单个字节。read(byte[] b)
方法:读取多个字节。readLine()
方法:读取一行数据。
写数据
我们可以使用 write()
、write(byte[] b)
、write(String str)
等方法来写数据。
write()
方法:写入单个字节。write(byte[] b)
方法:写入多个字节。write(String str)
方法:写入字符串。
流式处理
流式处理是指将数据源的元素顺序转换为目标数据类型的序列,或者将数据源的元素顺序应用某个操作形成新的数据序列。
Java 中,我们可以使用 BufferedReader
、BufferedWriter
等类来实现流式处理。
BufferedReader
类:对文本文件进行逐行读取。BufferedWriter
类:对文本文件进行逐行写入。
IO 流的应用场景
IO 流的应用场景非常广泛,包括:
- 文件操作:读写文件。
- 网络通信:发送和接收网络数据。
- 数据库操作:读写数据库中的数据。
- 序列化和反序列化:将对象转换为字节序列并存储在文件中,然后再从文件中读取字节序列并还原成对象。
总结
IO 流是 Java 中处理输入和输出的基本工具。掌握 IO 流的使用方法,可以帮助我们更轻松地处理数据。