【I/O】I/O分类和用途 -- 比较容易记住

1、io 简单拷贝操作实例 -- copy

流的分类记忆:

1、方向分类  输入流  InputStream --> FileInputStream(文件)   

                      输出流  outputStream  ---> FileoutputStream(文件)

 

 

2、按照类型分类  字节流 --> 以字节的形式读取数据(复制文件)多为XXStream结尾

        

                            字符流 --> 以字符读取数据(文本文件)writeread

         reader-->fileReader-->BufferedReader(fileReader);      

         BufferedReader = 是一个过滤流;字符缓冲流

         new PrintWriter(new BufferedWriter(new FileWriter("XXX")) );

    BufferedWriter 缓冲过滤流;


3、按照操作方式 

                  节点流 –》可以直接创建的流叫做节点流;例如FileInputStream                 FileoutputStream

                   过滤流 –》可以装饰节点流,增加相应的功能

                //BufferedInputStream(必须传入一个具体的输入流)

               //BufferedOutputStream (必须传入一个具体的输出流流)

           过滤流嵌套节点流

BufferedInputStreambis = newBufferedInputStream(new FileInputStream("XXX"));写类同;

BufferedOutputStreambos = newBufferedOutputStream(new FileOutputStream("XXX"));

 

dataoutputStream – 数据过滤流:

  DataOutputStream dos =  new DataOutputStream(new  FileOutputStream("XXX"));

dos.writeInt(1111);

DataInputStream dis = new DataInputStream(new FileInputStream("XXX"));

int a = dis.readInt();

//如果希望存储基本数据类型就使用DataoutputStream 也是过滤流

//从文件读取基本数据类型使用datainputStream

ObjectOutputStream》过滤流; ---》必须序列话以后才能把对象写入对应的文件中

 

 

4、转换流  --->将字节流转换为字符流

InputStreamReader (记忆方法 inputStream to reader   把输入流转换为 字符流)

BufferedReader reader= new BufferedReader(new InputStreamReader(System.in));

 InputStreamReaderSystem.in的字节流转换为字符流;


发布了16 篇原创文章 · 获赞 3 · 访问量 3万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章