java IO 操作

来源:互联网 发布:大数据的思维变革ppt 编辑:程序博客网 时间:2024/06/08 01:02
JAVA IO流(InputStream,OutputStream)
     流按照单位划分有两种:
          字节流:以字节为单位读写
          字符流:以字符为单位读写
    
    字节流:    
          InputStream 字节输入流,是抽象类,
                                抽象了应用程序的[读取]数据方式
          OutputStream 字节输出流,是抽象类,
                                      抽象了应用程序的[写出]数据方式
    
     字节流与字符流在类名上就容易区分
          字符输入流以Reader结尾,字符输出流以Writer结尾
===========
FileInputStream 文件字节输入流
     FileInputStream继承自InputStream,具体实现了对文件的读取数据

FileOutputStream 文件输出流
     FileOutputStream继承自OutputStream,具体实现了向文件中写数据
====
流分为:
     高级流和低级流.   
     低级流:又称为节点流,明确数据源.
                不同的单位区分为:字节流和字符流
             
     高级流:又称为处理流,过滤流.不能独立存在,而是要依托与一个低级流,
               在低级流的基础上对读写操作进行封装处理的流
    
     判断是否为高级流:特征是看这个流的构造方法中是否有包含一个流为
                                      参数,若有,这个流就是高级流
    

DataOutputStream与DataInputStream    
    
BufferedInputStream与BufferedOutputStream
缓冲字节输入/输出流
优点:读写效率高

=============
字符流(Reader and Writer)    
     字符流以字符(unicode编码)为单位读写数据.
     字符流底层依然是使用字节形式读写

字符流的基本实现:
     InputStreamReader:完成byte解析为char的流,按照编码解析
     OutputStreamWriter:完成从char编码为byte的流,按照编码解析

     BufferedReader:缓冲字符输入流
     PrintWriter:   缓冲字符输出流          

0 0