import java.io.File;
import java.util.ArrayList;public class FileTest {
private static ArrayList<String> filelist = new ArrayList<String>();
public static void main(String[] args) throws Exception {
String filePath = "E://Struts2";
getFiles(filePath);
}
/*
* 通过递归得到某一路径下所有的目录及其文件
*/
static void getFiles(String filePath){
File root = new File(filePath);
File[] files = root.listFiles();
for(File file:files){
if(file.isDirectory()){
/*
* 递归调用
*/
getFiles(file.getAbsolutePath());
filelist.add(file.getAbsolutePath());
System.out.println("显示"+filePath+"下所有子目录及其文件"+file.getAbsolutePath());
}else{
System.out.println("显示"+filePath+"下所有子目录"+file.getAbsolutePath());
}
}
}
}
import java.util.ArrayList;public class FileTest {
private static ArrayList<String> filelist = new ArrayList<String>();
public static void main(String[] args) throws Exception {
String filePath = "E://Struts2";
getFiles(filePath);
}
/*
* 通过递归得到某一路径下所有的目录及其文件
*/
static void getFiles(String filePath){
File root = new File(filePath);
File[] files = root.listFiles();
for(File file:files){
if(file.isDirectory()){
/*
* 递归调用
*/
getFiles(file.getAbsolutePath());
filelist.add(file.getAbsolutePath());
System.out.println("显示"+filePath+"下所有子目录及其文件"+file.getAbsolutePath());
}else{
System.out.println("显示"+filePath+"下所有子目录"+file.getAbsolutePath());
}
}
}
}
import java.io.*;
public class TestSearch{
public static void main(String[] args)throws Exception{
File dir = new File("c:/");
search(dir);
} public static void search(File dir){ //遍历目录
File[] files = dir.listFiles(AllFilter.getOnly()); //文件
File[] dirs = dir.listFiles(DirFilter.getOnly()); //子目录
if(files == null || dirs == null) return; for(File file : files){
System.out.println(file); //遍历输出文件名
}
for(File d : dirs){
search(d); //是目录则再次调用search方法
}
}
}//用于子目录的过滤器
class DirFilter implements FileFilter{
private DirFilter(){}
private static DirFilter only = new DirFilter();
public static DirFilter getOnly(){
return only;
}
@Override
public boolean accept(File file){
return file.isDirectory();
}
}//用于文件的过滤器
class AllFilter implements FileFilter{
private AllFilter(){}
private static AllFilter only = new AllFilter();
public static AllFilter getOnly(){
return only;
}
@Override
public boolean accept(File file){
return file.isFile();
}
}