转换流的主要作用是在编码上,但对于楼主的疑问,也还是可以解释的:
Writer out= new BufferedWriter(new OutputStreamWriter(System.out));
一开始我也非常想不懂怎么会是字符流向字节呢?但从结果来思考,似乎可以理解一些,如上面的代码
我们知道System.out是标准的输出流,对应的是控制台,而控制台接收的是字节数据,当我们想把文本中的内容显示在控制台时,因为文本中的内容一般是字符数据,所以我利用OutputStreamWriter转换流,来把字符数据输出为字节数据。
这跟键盘录入也算同理了,我想楼主对于键盘录入的字节转向字符应该好理解一些吧。
而楼主的代码:
BufferedWriter bufw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("out,txt")));
因为输出的是一个文件,也就是说写入一个文件中,这时,我们可以理解为,把一些字符数据,转换为字节数据存入一个文件中。
对于缓冲区,只是一个临时存储的容器而已。
个人理解。。。。。。。。。 |