导航:首页 > 编程语言 > java递归文件夹

java递归文件夹

发布时间:2024-10-04 09:35:43

java遍历一个文件夹中的所有文件---(递归)

public void traverseFolder2(String path) {

File file = new File(path);

if (file.exists()) {

File[] files = file.listFiles();

if (null == files || files.length == 0) {

System.out.println("文件夹是空的!");

return;

} else {

for (File file2 : files) {

if (file2.isDirectory()) {

System.out.println("文件夹:" + file2.getAbsolutePath());

traverseFolder2(file2.getAbsolutePath());

} else {

System.out.println("文件:" + file2.getAbsolutePath());

}

}

}

} else {

System.out.println("文件不存在!");

}

}

(1)java递归文件夹扩展阅读

public void traverseFolder1(String path) {

int fileNum = 0, folderNum = 0;

File file = new File(path);

if (file.exists()) {

LinkedList<File> list = new LinkedList<File>();

File[] files = file.listFiles();

for (File file2 : files) {

if (file2.isDirectory()) {

System.out.println("文件夹:" + file2.getAbsolutePath());

list.add(file2);

foldeNum++;

} else {

System.out.println("文件:" + file2.getAbsolutePath());

fileNum++;

}

}

File temp_file;

while (!list.isEmpty()) {

temp_file = list.removeFirst();


files = temp_file.listFiles();

for (File file2 : files) {

if (file2.isDirectory()) {

System.out.println("文件夹:" + file2.getAbsolutePath());

list.add(file2);

folderNum++;

} else {

System.out.println("文件:" + file2.getAbsolutePath());

fileNum++;

}

}

}

} else {

System.out.println("文件不存在!");

}

System.out.println("文件夹共有:" + folderNum + ",文件共有:" + fileNum);

}

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

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

packagecom.readfile;

importjava.io.File;

publicclassGetAllFiles {

publicstaticvoidmain(String[] args) {

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

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

//调用方法

getFiles(path);

}

/**

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

*/

publicstaticvoidgetFiles(String path) {

File file =newFile(path);

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

if(file.isDirectory()) {

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

File[] files = file.listFiles();

for(inti =0; i < files.length; i++) {

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

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());

}

}

}

(2)java递归文件夹扩展阅读:

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

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

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

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

③ 在JAVA中什么是递归有什么用

Java方法递归是指在一个方法的内部调用自身的过程,以此类推就是java方法递归的理解思想,具体来讲就是把规模大的问题转化为规模小的相似的子问题来解决。在函数实现时,因为解决大问题的方法和解决小问题的方法往往是同一个方法,所以就产生了函数调用它自身的情况。另外这个解决问题的函数必须有明显的结束条件,这样就不会产生无限递归的情况了。因此,java方法递归的两个条件就是,一通过递归调用来缩小问题规模,且新问题与原问题有着相同的形式;二存在一种简单情境,可以使递归在简单情境下退出。

阅读全文

与java递归文件夹相关的资料

热点内容
程序员多数有对象 浏览:131
单片机延时程序计算 浏览:442
编译原理语法翻译 浏览:502
pr编译出错渲染存在偏移 浏览:260
如何制作自家的app 浏览:197
推荐一个解压软件rar解压帮手 浏览:207
wd文档加密器 浏览:745
服务器上传压缩包一般是什么格式 浏览:331
发送加密文件密码几位数 浏览:158
树洞app怎么样 浏览:173
vivo编译时间可以改么 浏览:149
编译和编辑怎么区分 浏览:979
iar编译文件顺序 浏览:899
java二叉搜索树 浏览:633
王者怎么看好友的服务器 浏览:733
无线编码单片机 浏览:464
天联高级版域名服务器地址 浏览:206
鸿蒙用什么编译 浏览:730
服务器如何迅速扩容 浏览:792
服务器无固定ip地址不 浏览:643