package com.test;
//java程序的递归算法,列出某个目录下的所有子目录和文件
/*
文件名: DiGui.java
描述: 学习递归算法,列出某个目录下面的所有子目录(包括子目录下面的目录和文件)
以及文件。递归函数,就是在一个函数里面直接或者间接的调用该函数本身。
作者: 慈勤强
Email:cqq1978@Gmail.com
http://blog.csdn.net/cqq
System.out.println("@:D://SVN//ECIF_DOC//01-资料//数据库设计//数据导入//symbols//tableDate_symbols"+fillLs.get(i) + ";");
*/
import java.io.File;
import java.util.ArrayList;
class DiGui {
static java.util.ArrayList fillLs = new ArrayList();
static void getDir(String strPath) throws Exception {
try {
File f = new File(strPath);
if (f.isDirectory()) {
File[] fList = f.listFiles();
for (int j = 0; j < fList.length; j++) {
if (fList[j].isDirectory()) {
// System.out.println(fList[j].getPath());
getDir(fList[j].getPath()); // 在getDir函数里面又调用了getDir函数本身
}
}
for (int j = 0; j < fList.length; j++) {
if (fList[j].isFile()) {
// System.out.println(fList[j].getPath());
String fileName = fList[j].getName();
// System.out.println(fList[j].getName());
System.out.println(fList[j].getAbsolutePath());
// if (fileName.indexOf("prg") != -1
// || fileName.indexOf("pzg") != -1
// || fileName.indexOf("jsp") != -1) {
// //System.out.println("eeeeeeeeeeeeeeee");
// fillLs.add(fileName);
//
// }
if (fileName.indexOf("dat") != -1
|| fileName.indexOf("pzg") != -1
&& fileName.indexOf(".svn-base") == -1) {
//System.out.println("eeeeeeeeeeeeeeee");
fillLs.add(fileName);
}
}
}
}
} catch (Exception e) {
System.out.println("Error: " + e);
}
}
public static void main(String[] args) {
String strPath = "D://CDB//SVN//ECIF_DOC//01-资料//数据库设计//summit//tableData";//"D://work_space//CMMI//16-评估项目文档//03-IT管理平台//";
System.out.println(strPath);
try {
getDir(strPath);
System.out.println(fillLs.size());
System.out.println(fillLs);
for (int i = 0; i <= fillLs.size(); i++) {
System.out.println(fillLs.get(i));
}
} catch (Exception e) {
System.out
.println("error!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
+ e.getMessage());
}
}
}
列出某个目录下的所有子目录和文件
最新推荐文章于 2022-11-15 16:14:46 发布