JAVASEday12 File类

File类

File类是对文件和目录进行相关操作的类。
构造方法:

  • File(String pathname):根据一个路径得到File对象
  • File(String parent, String child):根据一个目录和一个子文件/目录得到File对象
  • File(File parent, String child):根据一个父File对象和一个子文件/目录得到File对象
```//通过将给定路径名字符串转换为抽象路径名来创建一个新 File 实例。
        File file = new File("C:\\Users\\ShenMouMou\\Desktop\\集合小结.bmp");
        //File(String parent, String child)
        //根据 parent 路径名字符串和 child 路径名字符串创建一个新 File 实例。
        //父路径是个字符串形式的
        File file1 = new File("C:\\Users\\ShenMouMou\\Desktop", "集合小结.bmp");
//File(File parent, String child)
        //根据 parent 抽象路径名和 child 路径名字符串创建一个新 File 实例

        File file2 = new File("C:\\Users\\ShenMouMou\\Desktop");
        //父路径是个File形式
        File file3 = new File(file2, "集合小结.bmp");

方法:

  • 创建功能

创建一个文件

File file = new File("a.txt");
        //创建一个文件 返回值表示,该文件是否创建成功
        //重复创建该文件,返回false 第一次创建成功返回true
        boolean newFile = file.createNewFile();
        System.out.println(newFile);

创建一个目录

//封装一个目录
        File file1 = new File("E:\\test");
        //创建一个目录,第一次创建成功,返回true 重复创建返回false
        boolean b = file1.mkdir();//创建单级目录
        System.out.println(b);

创建多级目录

 File file2 = new File("E:\\demo\\hehe\\haha");
       // boolean mkdir = file2.mkdir();
        boolean mkdirs = file2.mkdirs(); //创建多级目录
        System.out.println(mkdirs);
  • 删除功能:
    删除文件
//delete(); 删除文件或目录,注意不走回收站
        File file = new File("a.txt");
        boolean b = file.delete(); //返回值表示,文件是否删除成功
        System.out.println(b);

删除目录

File file1 = new File("E:\\test");
        //delete();删除目录,只能删除空目录
        boolean delete = file1.delete();
        System.out.println(delete);
  • 文件的重命名
//重命名
        //当你的源文件,和你传入的这个文件,在同一个目录下那么就是重命名
        File file1 = new File("b.txt");
        boolean b = file.renameTo(file1);//返回值时是否重命名成功
        System.out.println(b);

注意,如果两个文件的路径不相同,则该函数的功能将变成剪切文件

 //剪切功能renameTo()当你源文件的路径 ,和传入的文件路径不一致,就是剪切
        File file2 = new File("c.txt");
        File file3 = new File("E:\\c.txt");
        file2.renameTo(file3);
  • 与判断有关的方法
 //与判断相关的方法
        //判断他是不是一个文件
        File file = new File("b.txt");
        boolean file1 = file.isFile();
        System.out.println(file1);
        
        //判断它是不是一个文件
        File file2 = new File("E:/demo");
        System.out.println(file2.isFile());
        //判断是不是一个目录isDirectory()
        System.out.println(file2.isDirectory());

       
        boolean exists = file.exists();
        System.out.println(exists);
        if(exists)//判断文件是否存在{
            file.delete(); 
        }

        File file3 = new File("E:\\mytest");
        boolean exists1 = file3.exists();
       if(!exists1){
           file3.mkdirs();
           
        File file = new File("C:\\Users\\ShenMouMou\\Desktop\\aaa.txt");
        //判断文件是否可读可写
        boolean b = file.canRead();
        boolean b1 = file.canWrite();
        System.out.println(b);
        System.out.println(b1);
        //判断一个文件是否隐藏
        boolean hidden = file.isHidden();
        System.out.println(hidden);
        //判断是否是可执行文件 Liunx系统下 判断是否是一个可执行文件
        boolean b2 = file.canExecute();
        //判断这个文件,是否是绝对路径
        boolean absolute = file.isAbsolute();
        System.out.println(absolute);
  • 与获取有关的方法
 //关于获取的方法
        File file = new File("F:\\复制\\aaa..txt");
        String name = file.getName(); //获取文件或目录的名称
        System.out.println(name);
        //获取文件的长度 字节数
        long length = file.length();
        System.out.println(length);
        //获取他的绝对路径返回的是字符串的形式
        String absolutePath = file.getAbsolutePath();
        System.out.println(absolutePath);
        //获取他的绝对路径返回的是File的形式,根据灵活
        File absoluteFile = file.getAbsoluteFile();
        absoluteFile.delete();
        System.out.println(absolutePath.toString());
        //获取相对路径
        String path = file.getPath();
        System.out.println(path);
        //获取该文件的父路径,返回的是字符串表现形式
        String parent = file.getParent();
        System.out.println(parent);
        //获取该文件的父路径,返回的是File表现形式
        File parentFile = file.getParentFile();
        System.out.println(parentFile);

运行结果:
在这里插入图片描述

//获取盘符的空间大小
        File file = new File("D:\\");
        long totalSpace = file.getTotalSpace(); //单位 是 字节
        System.out.println(totalSpace/1024/1024/1024.0+" GB");
        //获取剩余空间
        long freeSpace = file.getFreeSpace();
        System.out.println(freeSpace/1024/1024/1024.0+" GB");

 		//获取文件的最后一次修改时间
        long time = file.lastModified();
        System.out.println(time);
        //怎么把毫秒值,转换成年月日时分秒
        Date date = new Date(time);
        String format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(date);
        System.out.println(format);
 //  public String[] list (): 获取该目录下所有的文件或文件夹的名称
        File file = new File("E:\\测试图片");
        String[] list = file.list();
        for (String s : list) {
            System.out.println(s);
        }


 File file = new File("E:\\测试图片");
            File[] files = file.listFiles(); //获取该目录下,所有的文件或文件夹的File形式数组
            for (File f : files) {
                System.out.println(f.getName());
        }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值