JavaI/0操作输入输出流简介(二)
?
? ? ? Reader和Writer
? ? ? ? ? ?首先,我们要明确一点,Reader和Writer不是为了取代InputStream和OutStream的,而且他们之间在代码上可以看到,也没有什么直接的关系。两者最大的区别呢,是Reader和Writer提供兼容Unicode与面向字符的I/O功能,而后两者则是提供面向字节形式的I/O操作。(1个字符=2个字节)
?
? ? ? ? ? ?有的时候,我们需要将来自于字节层次结构中的类和来自于字符层次结构中的类结合起来使用,这时候,从应用场景上就可以看到,这是典型的适配器模式。。。适配器类,InputStreamReader可以把InputStream转化为Reader,而OutputStreamWriter可以把OutputStream转换为Writer。
一个简单的例子
?
? ? ?最后强调一下,使用这个类的时候,我们必须知道文件的排版(其实就是每条记录的大小和位置),只有这样才能正确的使用它。
? ? ??
?
?
?
?