java中怎样获得一个文件夹中的所有文件名

java中怎样获得一个文件夹中的所有文件名,第1张

java中获得一个文件夹中的所有文件名代码如下:

package com.readfile

import java.io.File

public class GetAllFiles {

public static void main(String[] args) {

//路径   这里写一个路径进去

String path="F:\\QQ文档"

//调用方法

getFiles(path)

}

 

/**

* 递归获取某路径下的所有文件,文件夹,并输出

*/

public static void getFiles(String path) {

File file = new File(path)

// 如果这个路径是文件夹

if (file.isDirectory()) {

// 获取路径下的所有文件

File[] files = file.listFiles()

for (int i = 0i <files.lengthi++) {

// 如果还是文件夹 递归获取里面的文件 文件夹

if (files[i].isDirectory()) {

System.out.println("目录:" + files[i].getPath())

getFiles(files[i].getPath())

} else {

System.out.println("文件:" + files[i].getPath())

}

}

} else {

System.out.println("文件:" + file.getPath())

}

}

}

扩展资料:

如果想要获得当前文件中的文件名只需要String [] fileName = file.list()就可以了。

如果要包括文件中的文件名就可以用递归的方式。下面是两个具体的实现。

其中public static String [] getFileName(String path)是只得到当前文件中的文件名。

public static void getAllFileName(String path,ArrayList<String>fileName)是包括当前文件及其子文件的文件名。

参考资料:

百度百科-Java

我写了一段遍历某个文件查找指定文件的,你自己改成你需要的功能。

import java.io.File

import java.util.HashMap

public class Test1 {

static HashMap<String, String>filelist=new HashMap<String, String>()

/**

* 递归方法

* @param path 文件路径

*/

public static void find(String path){

File file=new File(path)

File[] files = file.listFiles()

//如果文件数组为null则返回

if (files == null)

return

for (int i = 0i <files.lengthi++) {

if (files[i].isDirectory()) {

//判断是不是文件夹,如果是文件夹则继续向下查找文件

find(files[i].getAbsolutePath())

} else {

//记录文件路径

String filePath = files[i].getAbsolutePath().toLowerCase()

//记录文件名

String fileName=files[i].getName().toLowerCase()

//System.out.println("---"+strFileName)

filelist.put(fileName, filePath)

}

}

}

public static void main(String[] args) {

//需要遍历的路径,也就是你要查找文件所在的路径

String path="D:\\kpi\\"

find(path)

System.out.println("kpi.9的路径:"+filelist.get("kpi.9"))

//输出结果:d:\kpi\kpi.9

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/tougao/11498313.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存