zoukankan      html  css  js  c++  java
  • 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) 

  • 相关阅读:
    从app加载页面说开去
    NSLog打印各种类型数据的方法
    17个常用代码整理
    成为优秀程序员的10点建议
    iOS常用第三方类库
    iPhone开发如何捕获提交异常日志
    IOS 关于四舍五入的神器NSDecimalNumber
    面向对象与面向过程的一点思考
    程序员,你会为谁卖命?
    关于面向对象的一点思考
  • 原文地址:https://www.cnblogs.com/secoding/p/9497849.html
Copyright © 2011-2022 走看看