钱智慧 发表于 2012-3-4 14:53
我觉得你说的挺有道理,对我有所启发。
看一个类的功能还是得从它的方法入手。谢谢了。 ...
我是看到毕老师视频说,记不清哪个对哪个了,刚刚看了下,是BufferOutputStream中的write(int b)这里是把字符强制转换成字节,保持数据的原样性。
这是API上的原文:OutputStreamWriter 是字符流通向字节流的桥梁:使用指定的 charset 将要向其写入的字符编码为字节。它使用的字符集可以由名称指定或显式给定,否则可能接受平台默认的字符集。
每次调用 write() 方法都会针对给定的字符(或字符集)调用编码转换器。在写入基础输出流之前,得到的这些字节会在缓冲区累积。可以指定此缓冲区的大小,不过,默认的缓冲区对多数用途来说已足够大。注意,传递到此 write() 方法的字符是未缓冲的。
为了达到最高效率,可考虑将 OutputStreamWriter 包装到 BufferedWriter 中以避免频繁调用转换器。例如:
Writer out
= new BufferedWriter(new OutputStreamWriter(System.out));
|