<aside> 💡

Java中的字符转换流:InputStreamReader 和 OutputStreamWriter

这两个类是Java I/O中非常重要的一部分,它们的核心作用是充当“桥梁”,在字节流(Byte Stream)和字符流(Character Stream)之间进行转换

</aside>


1. 为什么需要转换流?

在Java I/O中,流被分为两大类:

  1. 字节流 (Byte Stream)
  2. 字符流 (Character Stream)

核心问题来了:

这个“字节”和“字符”之间的转换,就需要一个规则,这个规则就是“字符编码(Charset)”。

InputStreamReader 和 OutputStreamWriter 就是专门来做这个“编码”和“解码”工作的桥梁。


2. InputStreamReader (字符转换输入流)

InputStreamReader 是一个 Reader。它读取字节并将其解码为字符。

一句话总结:它把一个 InputStream (字节输入流) 包装成一个 Reader (字符输入流)。

常用构造方法

  1. public InputStreamReader(InputStream in)