前辈们:
      我们知道InputStream/OutputStream是处理字节流的,Reader/Writer是处理字符流的。但他们的实现结果都是一样的。那么他们的有没有显式的区别啊?前者能处理汉字,后者也能,他们的区别在哪啊?
      诸位前辈见笑了。承蒙赐教,不胜感激!

解决方案 »

  1.   

    区别在于一个是字节,一个字符byte = (byte)125
    这有可能是'A'的字节表示,而char c = 'A';这直接表示成一个字符.就是封装一下.
      

  2.   

    你用Reader/Writer读读图片就知道区别了....
      

  3.   

    后者只能读取普通文本文件(连word文档都不行),读取的结果是字符流...效率高过前者...前者能按二进制读取任意文件,读取的结果是二进制流.....
      

  4.   

    字符流处理的单元为2个字节的Unicode字符,分别操作字符、字符数组或字符串,而字节流处理单元为1个字节,操作字节和字节数组。Java内用Unicode编码存储字符,字符流处理类负责将外部的其他编码的字符流和java内Unicode字符流之间的转换。而类InputStreamReader和OutputStreamWriter处理字符流和字节流的转换。字符流(一次可以处理一个缓冲区)一次操作比字节流(一次一个字节)效率高.