java代码 读取一个文件夹下的所有文件夹及里面的文件。

java代码 读取一个文件夹下的所有文件夹及里面的文件。,第1张

我给你个例子,你把其中的路径File file = new File("c:\\tmp\\5");改成你的路径就行了。

public class Test2

{

public static void main(String[] args)

{

File file = new File("c:\\tmp\\5");

Test2 t = new Test2();

tmethod(file);

}

public void method(File f)

{

File[] FList = flistFiles();

for (int i = 0; i < FListlength; i++)

{

if (FList[i]isDirectory()==true)

{

method(FList[i]);

}

else

{

Systemoutprintln(FList[i]getAbsolutePath());

}

}

}

}

public static List<File> getFiles(String path){

    File root = new File(path);

    List<File> files = new ArrayList<File>();

    if(!rootisDirectory()){

    filesadd(root);

    }else{

     File[] subFiles = rootlistFiles();

     for(File f : subFiles){

     filesaddAll(getFiles(fgetAbsolutePath()));

     }    

    }

    return files;

}

public static void main(String[] args) {

    List<File> files = getFiles("D:\\usr\\local\\java\\jdk160_30");

    for(File f : files){

    Systemoutprintln(fgetName());

    }

}

大概就是这样了,没有做异常处理,自己看着办~

JAVA 遍历文件下的所有文件(递归调用和非递归调用)

1不使用递归的方法调用。

public void traverseFolder1(String path) {

int fileNum = 0, folderNum = 0;

File file = new File(path);

if (fileexists()) {

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

File[] files = filelistFiles();

for (File file2 : files) {

if (file2isDirectory()) {

Systemoutprintln("文件夹:" + file2getAbsolutePath());

listadd(file2);

fileNum++;

} else {

Systemoutprintln("文件:" + file2getAbsolutePath());

folderNum++;

}

}

File temp_file;

while (!listisEmpty()) {

temp_file = listremoveFirst();

files = temp_filelistFiles();

for (File file2 : files) {

if (file2isDirectory()) {

Systemoutprintln("文件夹:" + file2getAbsolutePath());

listadd(file2);

fileNum++;

} else {

Systemoutprintln("文件:" + file2getAbsolutePath());

folderNum++;

}

}

}

} else {

Systemoutprintln("文件不存在!");

}

Systemoutprintln("文件夹共有:" + folderNum + ",文件共有:" + fileNum);

}

2使用递归的方法调用

public static List<File> getFileList(String strPath) {

File dir = new File(strPath);

File[] files = dirlistFiles(); // 该文件目录下文件全部放入数组

if (files != null) {

for (int i = 0; i < fileslength; i++) {

String fileName = files[i]getName();

if (files[i]isDirectory()) { // 判断是文件还是文件夹

getFileList(files[i]getAbsolutePath()); // 获取文件绝对路径

} else if (fileNameendsWith("avi")) { // 判断文件名是否以avi结尾

String strFileName = files[i]getAbsolutePath();

Systemoutprintln("---" + strFileName);

filelistadd(files[i]);

} else {

continue;

}

}

}

return filelist;

}

以上就是关于java代码 读取一个文件夹下的所有文件夹及里面的文件。全部的内容,包括:java代码 读取一个文件夹下的所有文件夹及里面的文件。、java 循环读取一个指定文件夹下的所有文件,提供大致代码的思路吧,谢谢~、java怎么循环读取目录下的文件内容等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/web/9660176.html

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

发表评论

登录后才能评论

评论列表(0条)

保存