@zhuanxu
2017-11-05T11:21:21.000000Z
字数 742
阅读 1974
Java
IO
流的本质是数据传输,通过流能封装不同特性的数据传输。
此处重点是数据传输的不同特性,下面就从不同的方面来讲解:
注意此处输入输出,实际是相对内存而言,以一张图形象说明:
下面是一张IO继承图,可以看到分为了面向字节的和面向字符的两大类IO。
在看一张Reader的继承图:
Java在处理字符上内部统一采用16-bit char表示一个字符,在输出的时候会根据外部字符编码进行转换,例如UTF8是采用1-4字节表示一个字符,重点FileReader
。
下面是Writer的继承图:
Writer从java接收16-bit char,输出到另外的地方,重点FileWriter
和PrintWriter
。
数据以8bit读入,重点介绍DataInputStream
和FileInputStream
重点FileOutputStream
和DataOutputStream