zoukankan      html  css  js  c++  java
  • java的IO和NIO

    java的IO和NIO

    File
    InputStream / OutputStream
    FileInputStream / FileOutputStream
    BufferedInputStream / BufferedOutputStream
    ObjectInputStream / ObjectOutputStream
    Reader / Writer
    InputStreamReader / OutputStreamWriter
    BufferedReader
    

    2 File

    文件或文件夹属性方法
    exists() 路径是否存在
    isFile() 是否是文件
    isDirectory() 是否是文件夹
    length() 文件的字节量, 对文件夹无效
    getName() 文件名
    getParent() 父目录
    getAbsolutePath() 完整路径
    创建、删除文件或文件夹
    createNewFile() 创建文件
    mkdirs() 创建多层文件夹
    delete() 删除文件,或空文件夹
    File.createTempFile() 在系统临时目录下创建临时文件
        文件夹的文件列表
    list()
    获得 String[] 数组
        包含所有文件或文件夹名称字符串
    listFiles()
    获得 File[] 数组
        包含文件或文件夹路径的封装对象
    

    3.流 Stream

    把数据读写,抽象成数据在管道中流动
        单向流动
    顺序从头到尾流动一次
    

    4 InputStream/OutputStream

    字节流的抽象父类
        方法
    write( int b)
    int的四个字节中,只输出末尾的一个字节
    write( byte[] buff)
    输出数组中全部字节值
    
    write( byte[] buff, start, length)
    输出数组中,从start开始的length个字节值
    
    read()
    读取1个字节,再补三个0字节,转成int
    读取结束,再读取,返回 - 1
    
    read( byte[] buff)
    根据数组的长度,读取一批字节值,放入指定的数组,并返回这一批的数量
    
    读取结束,再读取,返回 - 1
    

    5 高级流、操作流

    与其他流相接,提供特定的数据处理功能
    对高级流的操作,会对相接的流,执行相同操作
        高级流不直接接数据源
    提供内存缓冲区,来提高单字节的读写效率
        BufferedInputStream
    单字节读取数据,缓冲流帮助做批量读取
    l BufferedOutputStream
    单字节输出,先把字节值,缓存在内部数组中,缓存存满,做批量输出
    缓存不满,也可以手动刷出 flush ()
    

    6. Reader/Writer

    字符流的抽象父类
        方法
    write( int c)
    int四个字节中,末尾两个字节是char类型字符,把末尾两个字节,转换成其他编码再输出
    
    write( char[] buff)
    输出全部字符
    
    write( char[] buff, start, length)
    输出从start开始的length个
    
    write(String s)
    输出字符串的全部字符
    
    read()
    读取一个字符的字节值,补两个0字节,转成int
    
    读取结束,再读取,返回 - 1
    
    read( char[] buff)
    批量读取
        返回这一批的字符数量
    
    读取结束,再读取,返回 - 1
    

    7 InputStreamReader/OutputStreamWriter

    字符编码转换流
        InputStreamReader
    读取其他编码字节值,转成Unicode
    

    8 BufferedReader/BufferedWriter

    字符缓冲流,提高单字符读写效率
        BufferedReader
    readLine()
    
    读取一行字符串,不含末尾换行符
    
    读取结束,再读取,返回null
    
  • 相关阅读:
    JavaScript完整总结
    vue引入iframe的父子页面的数据传递
    随笔开发中笔记
    关于表格(table)的操作
    es6--6.字符串相关
    ES6--5.数组4个新增方法
    ES6--4.解构赋值
    sublime 远程连接服务器编辑
    ajaxSubmit
    修改 debian 时区
  • 原文地址:https://www.cnblogs.com/szls-666/p/12494150.html
Copyright © 2011-2022 走看看