java io File API的使用


1.各种编码占用的字节数
  • gbk编码中文占用2个字节,英文占用1个字节
  • utf-8编码中文占用3个字节,英文占用一个字节
  • utf-16be 编码中文占用2个字节,英文占用2个字节

2)Java文件模型(在硬盘的文件是 byte byte byte存储的,是数据的集合)

3)File API
  • 构造方法:new File(“相对路径/绝对路径”),new File(“文件目录”,”文件名”)
  • File.separator(路径分隔符,适用windows/linux),也可以用”/”或”\”
  • 判断是否是目录:file.isDirectory(),目录不存在或不是目录,返回false
  • 判断是否是文件:file.isFile()
  • 判断文件是否存在:file.exists()
  • 创建目录或多级目录:file.mkdir()或者file.mkdirs()
  • 删除文件或目录:file.delete()
  • 创建新文件:file.createNewFile()
  • 获取文件名称:file.getName()
  • 获取绝对路径:file.getAbsolutePath()
  • 获取父级绝对路径:file.getParent()
  • 获取文件大小:file.getSize()
  • 获取文件格式名:file.getFormat()
  • 父目录路径:file.getParent()
  • 父目录对象File:file.getParentFile(),file.getParentFile().isDirectory/delete/mkdir/mkdirs/exists…
  • 获取文件长度:file.length()
  • 根据目录获取多文件File[]:file.listFiles()

4)遍历文件示例
public static void listDirectory(File dir) throws IOException{
    if(!dir.exists()){
        throw new IllegalArgumentException("文件不存在");
    }
    if(!dir.isDirectory()){
        throw new IllegalArgumentException("目录不存在");
    }
    File[] files = dir.listFiles();
    if(files != null && files.length > 0){
    for (File file : files){
        if(file.isDirectory()){
            //递归
            listDirectory(file);
        }else{
            System.out.println(file);
            }
        }
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值