第八章 File I/O

第八章 File I/O

1. 操作文件或目录的属性

使用File类操作文件和目录

File flie=new File(所指向的文件路径名)
    //文件类
FileMethods fm=new FileMethods(flie); 
//文件方法                      文件
​

File类的常用方法

方法名称说明
boolean exists()判断文件或目录是否存在
boolean isFile()创建名称的空文件,不创建文件夹
boolean isDirectory()删除文件或目录
String getPath()判断是否是文件
String getAbsolutePath()判断是否是目录
String getName()文件名称
boolean delete()相对路径
boolean createNewFile()绝对路径
long length()文件长度,单位是字节

2.Java的流

分类

  • 按照流向划分

    输入流:只能读取数据,不能写入数据

    输出流:只能写入数据,不能读取数据

  • 按照所操作的单元划分

    字节流:操作的最小数据单位是8位的字节

    字符流:操作的最小数据单位是16位的字节

按照处理器单元划分(四个抽象类)

 

3.使用字节流读写文本文件

  1. 使用字节流读取文本文件

    字节输入流InputStream类

    File file=new File(所指向的文件路径名);
    InputStream fis=new FileInputStream(file);
    //字符输入流FileInputStream类,是InputStream的子类

    读取数据的常用方法(字节、字符都适用)

    方法名称说明
    int read()读取一个字节数据
    int read(byte[] b)将数据读取带字节数组中
    int read(byte[] b,int off,int len)从输入流中读取最多len长度的字节,保存带字节数组b中,保存位置从off开始
    void close()关闭输入流
    int available()返回输入流读取的估计字节数
  2. 使用字节流写文本文件

    字节输出流OutputStream类

    File file=new File(所指向的文件路径名);
    OutputStream fos=new FileOutputStream(file);
    //字符输入流FileOutputStream类,是OutputStream的子类

    OutputStream类的常用方法

    方法名称说明
    void write(int c)写入一个字节数据
    void write(byte[] buf)写入数组buf的所有字节
    void write(byte[] b,int off,int len)将字节数组中从off位置开始,长度为len的字节数据输出到输出流中
    void close()关闭输出流

4.使用字符流读写文本文件

  1. 使用字符流读取文本文件

    字符输入流Reader类

    Reader fr=new FileReader(所指向的文件路径名);
    //字符输入流FileReader类,是Reader的子类

    Reader类常用方法

    与字节输入流方法一样

  2. 使用字符流写文本文件

    字符输出流Writer类

    Writer fw=new FileWriter(所指向的文件路径名);
    //字符输入流FileWriter类,是Writer的子类

    Writer类常用方法

    方法名称说明
    write(String str)将str字符串里包含的字符输出到指定的输出流中
    write(String str,int off,int len)将str字符串里从off位置开始长度为len的字符输出到输出流中
    void close()关闭输出流
    void flush()刷新输出流

    5.二进制文件的读写

    1. 使用字节流类DataInputStream读二进制文件

      FileInputStream fis=new FileInputStream(所指向的文件路径名);
      DataInputStream dis=new DataInputStream(fis);
      //DataInputStream是FileInputStream的子类
      dis.read(); //读取数据字节
      dis.close(); //关闭数据流
    2. 使用字节流类DataOutputStream写二进制文件

      FileOutputStream outFile=new FileOutputStream(所指向的文件路径名);
      DataOutputStream out=new DataOutputStream(outFile);
      //DataOutputStream是FileOutputStream的子类
      out.write(); //将指定字节数据写入二进制文件
      out.close(); //关闭数据流
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值