375 Java的IO流:字节流和字符流
程序要读写文件、处理网络数据,都离不开IO流。Java的IO体系看起来很庞大,但核心就两个维度:字节vs字符、输入vs输出。搞清这两个维度,整个IO体系就通了。
一、IO流的基本分类
IO流 ├── 字节流(处理原始字节) │ ├── InputStream ← 输入(读) │ └── OutputStream ← 输出(写) └── 字符流(处理字符) ├── Reader ← 输入(读) └── Writer ← 输出(写)| 类型 | 基类 | 处理单位 | 适用场景 |
|---|---|---|---|
| 字节流 | InputStream/OutputStream | 字节(byte) | 图片、视频、音频等二进制文件 |
| 字符流 | Reader/Writer | 字符(char) | 文本文件 |
生活比喻:
- 字节流 = 搬运砖头(不管内