java中OutputStreamWriter和Writer的区别还有InputStreamReader与Reader的区别..

来源:百度知道 编辑:UC知道 时间:2024/05/25 00:43:20
我要简单一点的解释就够了。。不要COPY

java中OutputStreamWriter和Writer的区别还有InputStreamReader与Reader的区别如下:
1.OutputStreamWriter负责进行InputStream到Reader的适配和由OutputStream到Writer的适配。 Reader、Writer是用来处理16位元的流。
Reader支持16位的Unicode字符输出,InputStream支持8位的字符输出。
Reader和InputStream分别是I/O库提供的两套平行独立的等级机构,

InputStream、OutputStream是用来处理8位元的流,
2.java.io.Reader 和 java.io.InputStream 组成了 Java输入类。Reader 用于读入16位字符,也就是 Unicode编码的字符;而 InputStream 用于读入 ASCII字符和二进制数据。在 Java中,有不同类型的 Reader 输入流对应于不同的数据源:
FileReader 用于从文件输入;
CharArrayReader 用于从程序中的字符数组输入;
StringReader 用于从程序中的字符串输入;
PipedReader 用于读取从另一个线程中的 PipedWriter 写入管道的数据。
相应的也有不同类型的 InputStream 输入流对应于不同的数据源:FileInputStream,ByteArrayInputStream,StringBufferInputStream,PipedInputStream。另外,还有两种没有对应 Reader 类型的 InputStream 输入流

java中的流从某种角度可以分为两类:字节流和字符流,字节流处理的对象是字节,而字符流处理的对象是字符,字节流中低级流是InputStream/OutputStresm,而字符流中的低级流是Reader/Writer,字符流往往提供了更好的方法,那么如何把字节流转换为字符流以达到字符流操作的好处就要用到字节流转向字符流的渠道:OutputStreamWriter和InputStr