java IO流 字符输入 类型强转

我想要达到的结果

img


//为什么要用char类型强转,一个中文字符在UTF-8中不是三个字节吗?char是一个字节,难道不会截断导致乱码吗?

emmm,char是一个字节×
java中char占用的字节:java中内码中的char使用UTF16的方式编码,一个char占用两个字节;java中外码中char使用UTF8的方式编码,一个字符占用【1~6】个字节。

Reader的read()方法,表示一次从流中取出一个字符(一个char),所以是匹配的