java学习阶段一 工具类(输入输出流)

java学习阶段一 工具类(输入输出流)

介绍

输入-读 输出-写

基本知识

  • File类的使用

    //File所在位置具体为java.io.File 使用File对文件进行操作
    //常用的使用
    File(目标路径);//创建对象同时将目标为文件路径作为传参
    对象名.isDirectory();//判断目标是否为目录
    对象名.isFile();//判断目标是否为文件
    //创建文件
    对象名.exists();//判断是否存在
    对象名.mkdir();//创建对象的单级目录
    对象名.mkdirs();//创建多级目录
    //创建文件
    对象名.createNewFile();//创建文件
    //获取信息
    对象名.isAbsoulute()//判断是否时绝对路径
    对象名.getPath()//获取相对路径
    对象名.getAbsolutePath()//获取绝对路径
    对象名.getName()//获取文件名
    
  • 绝对路径与相对路径

    当io流文件整体移动到其他文件夹时导致代码中路径失效的问题

    绝对路径:从根目录开始写的路径

    相对路径:从当前路径开始的路径 创建的文件将放在工程目录下

  • 字节流 为多个类的父类 不一一学习

    //字节输入流 InputStream 
    //构造方法
    传入File对象获取要读的文件 或者直接写文件路径
    //成员方法
    public int read()//读取一个数据字节
    public int read(byte[] b)//读入到byte数组中
    public int read(byte[] b,int off,int len)//最后len个字节读入到byte数组中 off为从哪个位置开始
    public void close()//关闭此文件输入流并释放资源
    返回值为 读取到的字节数组 为 -1时 代表读到文件末尾
    //字节输出流OutputStream
    //构造方法
    FileOutputStream(路径,布尔类型)//相比字节输入流多出的方法 如果已存在改文件 如果为false则替代该文件如果为false则在原文件后追加数据
    //常用方法中write重载与输入流基本一样 但是没有返回类型
    
  • 缓冲流

    //缓冲输入流BufferedInputStream
    //缓冲输出流BufferedOutputStream
    //创建输入输出对象后将对象交由缓冲流作为构造方法参数 由缓冲流对象进行操作
    对象名.flush()//将缓冲流中数据强制清空 close也可以有相同作用
    
  • 字符流

    //字节字符转换流 InputStreamReader 字节转字符 OutputStreamWriter 字符转字节
    //对应的一般流 缓冲流
    
  • 对象的序列化与反序列化 对象与字节的相互转换

    // ObjectInputStream ObjectOutputStream
    //创建类 继承Serializable接口 创建对象字节输入输出连接对象流 对象写入文件读取信息
    
    
    

主要事项

1 可以将传入构造方法的路径参数分成多个部分 也可以一个对象沿用其他对象的路径接着写

2 缓冲流就相当于一个桶,把要传输的数据暂时放在桶中 等到桶完全放满时在进行输入输出

原文地址:https://www.cnblogs.com/tigo/p/14448412.html