• Java学习 · 初识 IO流


    IO

     

    1. 原理与概念

    a)     流

                      i.           流动,流向

                    ii.           从一端移动到另一端 源头到目的地

                  iii.           抽象、动态概念,是一连串连续动态的数据集合

                  iv.           程序与文件|数组|网络连接|数据库,以程序为中心

    b)    分类

                      i.           流向:输入流输出流

                    ii.           数据

    1. 字节流

        a)     InPutStream OutPutStream

        b)    二进制

        c)     可以包括一切文件

    1. 字符流

        a)     Reader Writer

        b)    文本文件

        c)     只能处理纯文本

     

        4.功能

          a)     节点流

                                                     i.           包裹源头

          b)    处理流

                                                     i.           增强功能,提高性能

          c)  

    1. File文件类

        a)     两个常量

                          i.           路径分隔符;File.pathseparator

                          ii.           名称分隔符(windows)/File.separator

                    iii.        

      

        b)  构造File文件

                           i.          

                      ii.           常用方法

                 

      1. 字节流

            a)   读取文件

                                i.           建立联系   File对象 源头

                                ii.           选择流文件输入流  InputStream FileInputStream

                          iii.           操作  : byte[] car =new byte[1024];  +read+读取大小

                          iv.         

                               v.           释放资源 close

        b)    写出文件

                            i.           建立联系   File对象   源头 目的地

                           ii.           选择流文件输出流  OutputStream FileOutputStream

                          iii.           操作  :  write() +flush

                          iv.           释放资源

        c)     文件拷贝

                            i.           建立联系   File对象   源头 目的地

                           ii.           选择流     文件输入流  InputStream FileInputStream文件输出流  OutputStream FileOutputStream

                          iii.           操作  :  拷贝

     byte[] flush =new byte[1024]; int len =0;while(-1!=(len=输入流.read(flush))){  输出流.write(flush,0,len) }出流.flush

     

        d)    文件夹拷贝

                          i.           递归查找子孙级文件|文件夹

                         ii.           文件 复制(IO流复制)    文件夹  创建

                        iii.           不能将父目录拷贝到子目录中

                        iv.          

        e)     字符流

                          i.           只能处理 纯文本,全部为可见字符  .txt  .html

                         ii.           读取

          1. 建立联系

                  2.选择流

                  3.读取 char[] flush =new char[1024];

                  4.关闭

              

        f)      处理流

                          i.           字节缓冲流

          1.       BufferedInputStream
          2.       BufferedOutputStream

                        ii.           字符缓冲流

          1.       BufferedReader   readLine()
          2.       BufferedWriter    newLine()

                      iii.           作用

                      iv.          

                

        g)    转换流

                          i.         

                        ii.          

        h)    其他流

                          i.           字符数组流(节点流,字节流)

                        ii.           处理流

          1.       基本类型+String  保留数据+类型

                      a)     输入流:DataInputStream    readXxx

                      b)    输出流:DataOutputStream  writeXxx

                      c)    

                      d)   

          1.       引用类型 (对象) 保留数据+类型

                      a)     反序列化 输入流:ObjectInputStream  readObject()

                      b)    序列化 输出流OectOutputStream  writeObject()

                      c)      

                      d)   

            1.         打印流

                      a)     PrintStream  println() print()

                      b)    三个常量 : System.in /out/err   System.setIn() setOut() setErr()

                      c)    

      4.   文件分割

        a)  

        b) 

  • 相关阅读:
    Autolayout及VFL经验分享
    在iOS7中修改状态栏字体的颜色
    IOS 入门开发之创建标题栏UINavigationBar的使用(二)
    IOS 使用横屏
    NSDictionary转化为实体类对象
    xcode SVN
    IOS model的getter和setter方法
    深入理解Java:注解(Annotation)--注解处理器
    深入理解Java:注解(Annotation)自定义注解入门
    div 的相对定位与绝对定位
  • 原文地址:https://www.cnblogs.com/secoding/p/9497849.html
Copyright © 2020-2023  润新知