File类的相关方法(创建,删除,获取,判断)

1.File类的概述

File是文件和路径名的抽象表示。

  • 文件和路径可以通过File封装成对象。
  • File封装的对象可以仅仅是一个对象名。他可以是存在的,也可以是不存在的。

2.File类的构造方法

构造方法一:File(String pathname)

通过将给定的路径名字符串转换为抽象路径名来创建新的File实例

        String path = "C:\\itheima\\a.txt";
        File file = new File(path);

构造方法二:File(String parent, String child)

从父路径名字符串和子路径名字符串创建新的File实例

        String path1 = "C:\\itheima";
        String path2 = "a.txt";
        File file = new File(path1,path2);//把两个路径拼接.
        System.out.println(file);//C:\itheima\a.txt

构造方法三:File(File parent, String child)

从父抽象路径名和子路径名字符串创建新的File实例

        File file1 = new File("C:\\itheima");
        String path = "a.txt";
        File file = new File(file1,path);
        System.out.println(file);//C:\itheima\a.txt

3.File类的创建功能

方法一:public boolean createNewFile()

创建一个新的空的文件

        File file1 = new File("C:\\itheima\\aaa");
        boolean result1 = file1.createNewFile();
        System.out.println(result1);

注意:

  • 1.如果文件存在,那么创建失败,返回false
  • 2.如果文件不存在,那么创建成功,返回true
  • 3.createNewFile方法不管调用者有没有后缀名,只能创建文件.
  • 4.文件所在的文件夹必须要存在.

方法二:public boolean mkdir()

创建一个单级文件夹

        File file = new File("C:\\itheima\\aaa.txt");
        boolean result = file.mkdir();
        System.out.println(result);

注意:

  • 1.只能创建单级文件夹,不能创建多级文件夹
  • 2.不管调用者有没有后缀名,只能创建单级文件夹

方法三:public boolean mkdirs()

创建一个多级文件夹

        File file = new File("C:\\itheima\\aaa.txt");
        boolean result = file.mkdirs();
        System.out.println(result);

注意:

  • 1,可以创建单级文件夹,也可以创建多级文件夹
  • 2.不管调用者有没有后缀名,只能创建文件夹

4.File类的删除功能

方法: public boolean delete()

删除此抽象路径表示的文件或者目录

        File file = new File("C:\\itheima\\a.txt");
        boolean result = file.delete();
        System.out.println(result);

注意:

  • 1.不走回收站的.
  • 2.如果删除的是文件,那么直接删除.如果删除的是文件夹,那么能删除空文件夹
  • 3.如果要删除一个有内容的文件夹,只能先进入到这个文件夹,把里面的内容全部删除完毕,才能再次删除这个文件夹
  • 简单来说,只能删除文件和空文件夹.

5.File类判断和获取功能

方法一:public boolean isDirectory()

测试此抽象路径名表示的File是否为目录

        File file = new File("C:\\itheima\\a.txt");
        boolean result1 = file.isFile();
        boolean result2 = file.isDirectory();
        System.out.println(result1);
        System.out.println(result2);

方法二:public boolean isFile()

测试此抽象路径名表示的File是否为文件

        File file = new File("C:\\itheima");
        boolean result1 = file.isFile();
        boolean result2 = file.isDirectory();
        System.out.println(result1);
        System.out.println(result2);

方法三:public boolean exists()

测试此抽象路径名表示的File是否存在

        File file = new File("a.txt");
        boolean result = file.exists();
        System.out.println(result);

方法四:public String getName()

返回由此抽象路径名表示的文件或目录的名称

        File file = new File("a.txt");
        String name = file.getName();
        System.out.println(name);

        File file1 = new File("C:\\itheima");
        String name2 = file1.getName();
        System.out.println(name2);

注意:

  • 1.如果调用者是文件,那么获取的是文件名和后缀名
  • 2.如果调用者是一个文件夹,那么获取的是文件夹的名字

方法五:public File[] listFiles()

返回此抽象路径名表示的目录中的文件和目录的File对象数组。

进入文件夹,获取这个文件夹里面所有的文件和文件夹的File对象,并把这些File对象都放在一个数组中返回.包括隐藏文件和隐藏文件夹都可以获取.

        File file = new File("D:\\aaa");
        File[] files = file.listFiles();//返回值是一个File类型的数组
        System.out.println(files.length);
        for (File path : files) {
            System.out.println(path);
        }

注意:

  • 1.当调用者是一个文件时,直接返回null
  • 2,当调用者是一个空文件夹时,返回长度为0的数组
  • 3.当调用者是一个有内容的文件夹时,进入文件夹,获取这个文件夹里面所有的文件和文件夹的File对象,并把这些File对象都放在一个数组中返回
  • 4.当调用者是一个有权限才能进入的文件夹时,返回null
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值