Java如何实现代码示例中遍历指定文件夹及其所有子目录?
- 内容介绍
- 文章标签
- 相关推荐
本文共计368个文字,预计阅读时间需要2分钟。
javapublic class BianLi { public static void main(String[] args) { // 使用Scanner类获取输入的目录 Scanner scanner=new Scanner(System.in); System.out.println(请输入目录路径:); String directoryPath=scanner.nextLine(); File directory=new File(directoryPath);
// 创建文件对象 File[] files=directory.listFiles(); if (files !=null) { huoQu(files); } }
// 创建递归遍历文件夹的方法 public static void huoQu(File[] files) { for (File file : files) { if (file.isDirectory()) { System.out.println(文件夹: + file.getName()); huoQu(file.listFiles()); } else { System.out.println(文件: + file.getName()); } } }}
主要逻辑
使用scanner类获取输入的目录,并创建文件对象。
新建一个遍历文件夹的方法,参数是已创建的文件对象,递归调用自己。
import java.io.File; public class BianLi{ public static void huoQuMuLu(File a) { File[] fd = a.listFiles(); //获取目录数组 for(int i=0;i<fd.length;i++){ //将文件对象数组转换为字符数组,并输出数组 System.out.println(fd[i]); if(fd[i].isDirectory()){ //判断是不是目录 huoQuMuLu(fd[i]); //递归 调用自己 } } //return fd[i]; } public static void main(String args[]) { String str2 = ""; System.out.println("输入需要遍历的文件夹"); Scanner scan = new Scanner(System.in); //获取键盘输入数据 if(scan.hasNextLine()){ //判断scan有没有数据 str2 = scan.nextLine(); //获取输入的地址 System.out.println("开始遍历"+str2+"\n"); } scan.close(); File f1 = new File(str2); huoQuMuLu(f1); } }
测试
成功!
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。
本文共计368个文字,预计阅读时间需要2分钟。
javapublic class BianLi { public static void main(String[] args) { // 使用Scanner类获取输入的目录 Scanner scanner=new Scanner(System.in); System.out.println(请输入目录路径:); String directoryPath=scanner.nextLine(); File directory=new File(directoryPath);
// 创建文件对象 File[] files=directory.listFiles(); if (files !=null) { huoQu(files); } }
// 创建递归遍历文件夹的方法 public static void huoQu(File[] files) { for (File file : files) { if (file.isDirectory()) { System.out.println(文件夹: + file.getName()); huoQu(file.listFiles()); } else { System.out.println(文件: + file.getName()); } } }}
主要逻辑
使用scanner类获取输入的目录,并创建文件对象。
新建一个遍历文件夹的方法,参数是已创建的文件对象,递归调用自己。
import java.io.File; public class BianLi{ public static void huoQuMuLu(File a) { File[] fd = a.listFiles(); //获取目录数组 for(int i=0;i<fd.length;i++){ //将文件对象数组转换为字符数组,并输出数组 System.out.println(fd[i]); if(fd[i].isDirectory()){ //判断是不是目录 huoQuMuLu(fd[i]); //递归 调用自己 } } //return fd[i]; } public static void main(String args[]) { String str2 = ""; System.out.println("输入需要遍历的文件夹"); Scanner scan = new Scanner(System.in); //获取键盘输入数据 if(scan.hasNextLine()){ //判断scan有没有数据 str2 = scan.nextLine(); //获取输入的地址 System.out.println("开始遍历"+str2+"\n"); } scan.close(); File f1 = new File(str2); huoQuMuLu(f1); } }
测试
成功!
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。

