Java基础--IO-列出目录下所有文件
package com.fileiodemo;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
public class FileDemo {
//方法一
private static List files = new ArrayList();
public static List getDirAllFiles(File directory) {
File[] files2 = directory.listFiles();
for (File file : files2) {
if (file.isFile()) {
files.add(file);
}else if (file.isDirectory()) {
getDirAllFiles(file);
}
}
return files;
}
//方法二
public static List getDirAllFiles1(List files,File directory) {
File[] files2 = directory.listFiles();
for (File file : files2) {
if (file.isFile()) {
files.add(file);
}else if (file.isDirectory()) {
getDirAllFiles1(files,file);
}
}
return files;
}
public static void main(String[] args) {
String fname = "E:/app/test/a.txt";
String fdir = "E:/app/test";
File directory = new File(fdir);
//测试一
List files = getDirAllFiles(directory);
for (File file : files) {
System.out.println(file.getAbsolutePath());
}
System.out.println("文件的个数:"+files.size());
//测试二
List files1 = getDirAllFiles1(new ArrayList(),directory);
for (File file : files1) {
System.out.println(file.getAbsolutePath());
}
System.out.println("文件的个数:"+files1.size());
}
}