java中获得一个文件夹中的所有文件名代码如下:
package com.readfile
import java.io.Filepublic 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
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)