JAVA从零学re从零开始的JAVA学习04——<javaSE阶段二基础版>

day04 File类、字节流字符流、缓冲流转换流、序列化Files使用

  1.File类

    概述:文件和目录路径名(文件夹)的类,主要用于创建、查找、删除文件

    构造方法:File(String pathname)、File(String parent,String child)、File(File parent,String child)

 

 

    常用方法:

      

 

 

       

      

      

 

   2.io流操作——字节字符流

      概述:字节输出流(OutputStream)、字节输入流(InputStream)、字符输入流(Reader)、字节输出流(Writer)

      字节输出流OutputStream:抽象类

        

        

      子类:FileOutputStream;

        构造方法:

 

        

      字节输入流InputStream:抽象类

        常用方法:

          

 

       子类:FileInputStream

        构造方法:

        

 

       读取字节:当读取到最后结尾时返回1,当以字节数组读取时 如果字节数组没有填满 就会读取错误!解决方法:o.write(S,0,len)

 

      字符流:字符输出流Writer,字符输入流Reader

        字符输入流Reader:抽象类

 

         子类方法:FileReader

        构造方法:

      

 

 

         字符输出流:Writer:抽象类

        常用方法:

         

 

       子类:FileWriter

       构造方法:

        

 

       

      io流字节、字符输入输出流补充:

        换行操作字符输出写入”\r\n“;

        异常处理问题在jdk1.7之后不需要finally关流 需要在try(括号中创建流操作的对象)

        properties的使用:——————————————真尼玛学啥玩意

        

  3.缓冲流转换流序列化流

    缓冲流:字节缓冲输出流BufferedOutputStream、字节缓冲输入流BufferedInputStream、字符缓冲输出流BufferedWriter、字符缓冲输入流BufferedInput

    概述:提高文件的输入输出效率  基本原理:内置默认大小的缓冲区数组,通过缓冲区读写减少io次数提高读写效率

    字节缓冲流:构造方法:

      

 

     字符缓冲流:构造方法:

      

 

     字符缓冲流特有方法:readLine读取一行文字  newLine写一行文字

      高效升级版的字节、字符流

    

    转换流:解决解码的问题——用什么编码就需用什么解码

      

 

      InputStreamReader是Reader的子类

      构造方法:

        

 

       OutputStreamWriter是Writer的子类

      构造方法:

        

 

       转换流中的编码和解码形式需要指定 不然编码和解码不一致也会出现乱码

 

      序列化和反序列化:本质上是变成字节数组

        ObjectOutputStream类 构造方法ObjectOutputStream(FileOutputStream)

        序列化操作流程:

          满足两个条件:必须继承Serializable接口  不需要序列化的属性需要使用transient修饰 用static 修饰的属于类不属于对象也不能序列化

          写出对象:方法

 

 

        反序列化操作:

          将序列化原始数据恢复为对象

          构造方法

          

 

           写入对象:方法

 

          操作注意事项:1 文件需要存在可以找到   2序列化号 需要一致  不能修改文件

          

 

  4.Files打印流

      构造方法PrintStream(String name)

      使用

        

 

 

      

           

          

     

 

     

 

 

 

 

 

 

 

posted @ 2020-02-09 09:41  袁德华  阅读(166)  评论(0)    收藏  举报