复习(基础2)File类

目录

1、File类的使用

1.1、创建File对象

1.2、常用方法

1.2.1、判断文件类型、获取文件信息

1.2.2、创建文件、删除文件功能

1.2.3、遍历文件夹


1、File类的使用

1.1、创建File对象

注意:

        File对象可以定位文件和文件夹

        File封装的对象仅仅是一个路径名,这个路径可以是存在的,也可以是不存在的

 复习:

1、File类的作用?

        创建对象定位文件,可以删除、获取文件信息等。但是不能读写文件内容。

2、File类构建对象的方式 ?

        File file = new File(“文件/文件夹/绝对路径/相对路径”);

3、绝对路径和相对路径是什么样的?

        绝对路径是带盘符的。

        相对路径是不带盘符的,默认到当前工程下寻找文件。

1.2、常用方法

1.2.1、判断文件类型、获取文件信息

File类的判断文件类型、获取文件信息功能

方法名称

说明

public boolean isDirectory()

判断此路径名表示的File是否为文件夹

public boolean isFile()

判断此路径名表示的File是否为文件

public boolean exists()

判断此路径名表示的File是否存在

public long length()

返回文件的大小(字节数量)

public String getAbsolutePath()

返回文件的绝对路径

public String getPath()

返回定义文件时使用的路径

public String getName()

返回文件的名称,带后缀

public long lastModified()

返回文件的最后修改时间(时间毫秒值)

1.2.2、创建文件、删除文件功能

File类创建文件的功能

方法名称

说明

public boolean createNewFile()

创建一个新的空的文件

public boolean mkdir()

只能创建一级文件夹

public boolean mkdirs()

可以创建多级文件夹

File类删除文件功能

方法名称

说明

public boolean delete​()

删除由此抽象路径名表示的文件或空文件夹

注意

l delete 方法默认只能删除文件和空文件夹 delete 方法直接删除不走回收站

1.2.3、遍历文件夹

File类的遍历功能

方法名称

说明

public String[] list()

获取当前目录下所有的"一级文件名称"到一个字符串数组中去返回。

public File[] listFiles()(常用)

获取当前目录下所有的"一级文件对象"到一个文件对象数组中去返回(重点)

listFiles 方法注意事项:
        当文件不存在时或者代表文件时,返回null
        当文件对象代表一个空文件夹时,返回一个长度为0 的数组
        当文件对象是一个有内容的文件夹时,将里面所有文件和文件夹的路径放在File 数组中返回
        当文件对象是一个有隐藏文件的文件夹时,将里面所有文件和文件夹的路径放在File 数组中返回,包含隐藏文件
        当没有权限访问该文件夹时,返回null
遍历文件夹第一层目录
public class FileDemo3 {
    public static void main(String[] args) {
        File f1 = new File("D:/log4j");
        String[] list = f1.list();
        for (String s : list) {
            System.out.println(s);
        }
        System.out.println("--------");
        File[] files = f1.listFiles();
        for (File file : files) {
            System.out.println(file.getAbsolutePath());
        }
    }
}


00
01
file.log
新建文本文档.txt
--------
D:\log4j\00
D:\log4j\01
D:\log4j\file.log
D:\log4j\新建文本文档.txt

删除文件夹中的所有内容

package com.itwpf.d01_file;

import java.io.File;

public class DeleteFilestore {
    public static void main(String[] args) {
        //删除一个文件夹下的所有文件(包括子目录内的文件)
        File file = new File("D:\\log4j\\临时文件");//输入要删除文件目录的绝对路径
        if (deleteFile(file)) {
            System.out.println("文件删除成功!");
        }
    }

    public static Boolean deleteFile(File file) {
        //判断文件不为null或文件目录存在
        if (file == null || !file.exists()) {
            System.out.println("文件删除失败,请检查文件是否存在以及文件路径是否正确");
            return false;
        }
        //获取目录下子文件
        File[] files = file.listFiles();
        //遍历该目录下的文件对象
        for (File f : files) {
            //判断子目录是否存在子目录,如果是文件则删除
            if (f.isDirectory()) {
                //递归删除目录下的文件
                deleteFile(f);
            } else {
                //文件删除
                f.delete();
                //打印文件名
                System.out.println("文件名:" + f.getName());
            }
        }
        //文件夹删除
        file.delete();
        System.out.println("目录名:" + file.getName());
        return true;
    }
}


文件名:01.mp4
文件名:kkk.txt
文件名:sout.txt
目录名:31
目录名:21
目录名:22
目录名:11
目录名:12
目录名:00
文件名:001.mp4
文件名:002.mp4
文件名:01.mp4
文件名:01.txt
文件名:02.mp4
文件名:02.txt
目录名:01
文件名:file.log
文件名:新建文本文档.txt
目录名:临时文件
文件删除成功!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值