java.io.File类基本使用——遍历某路径的所有文件夹及文件

java.io.File类可以用来表示文件或目录,在需要遍历指定路径下的所有文件夹及文件时,可以使用此类。


思路如下:

1、判断给定路径是目录还是文件。
2、如果是文件,则直接打印该文件路径及文件名
3、如果是目录,则先打印该目录路径,并获取该目录下的所有目录及文件,再对每一个文件或目录执行第一步操作。

如此循环,即可获取所有文件


实现:

创建一个FileUtils工具类,并创建getFiles方法:

package utils;

import java.io.File;

public class FileUtils {

    public static void getFiles(File dir) {
        //如果当前文件或目录存在
        if(dir.exists()){
            //如果是目录,则:
            if(dir.isDirectory()){
                //打印当前目录的路径
                System.out.println(dir);
                //获取该目录下的所有文件和目录组成的File数组
                File[] files = dir.listFiles();
                //递归遍历每一个子文件
                for(File file : files){
                    getFiles(file);
                }
            }
            //如果是文件,则打印该文件路径及名称
            else{
                System.out.println(dir);
            }
        }
    }

}

测试:

创建测试类及方法:

package test;

import static org.junit.Assert.*;

import java.io.File;

import org.junit.Test;

import utils.FileUtils;

public class FileUtilsTest {

    @Test
    public void testGetFiles1() {
        File file = new File("/home/xiamingchen/图片");
        FileUtils.getFiles(file);
    }

}

输出结果如下:

/home/xiamingchen/图片
/home/xiamingchen/图片/Wallpapers
/home/xiamingchen/图片/Wallpapers/3d28fa7220b5cf3c9a4576d4101c6f04.jpg
/home/xiamingchen/图片/Wallpapers/15052410471317.png
/home/xiamingchen/图片/3d28fa7220b5cf3c9a4576d4101c6f04.jpg
/home/xiamingchen/图片/15052410471317.png

所指定路径下的文件如图所示:

这里写图片描述

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值