jsp教程顯示目錄下所有檔案與子目錄代碼
public static void getFiles(List<File> fileList, String path, String fileSuffix) {
File file = new File(path);
File[] files = file.listFiles();
if (files == null) {
return;
} else {
for (int i = 0; i < files.length; i++) {
// 判斷是否是檔案夾
if (files[i].isDirectory()) {
// 遞迴調用getFiles方法,得到所有的檔案
getFiles(fileList, getAvailablePath(files[i]), fileSuffix);
} else if (files[i].getName().lastIndexOf(fileSuffix) != -1) {// 只處理fileSuffix尾碼的文檔
// copyFileAndAddPackageName(files[i]);
fileList.add(files[i]);// 添加到檔案集合中
}
}
}
}
//方法二jsp刪除目錄所有檔案夾與檔案代碼
import java.io.*;
public class DeleteAll { //刪除檔案夾下所有內容,包括此檔案夾
public void delAll(File f)
throws IOException {
if(!f.exists())//檔案夾不存在不存在 throw new IOException(指定目錄不存在:+f.getName());
boolean rslt=true;//儲存中間結果
if(!(rslt=f.delete())){//先嘗試直接刪除 //若檔案夾非空。枚舉、遞迴刪除裡面內容
File subs[] = f.listFiles();
for (int i = 0; i <= subs.length - 1; i++) {
if (subs[i].isDirectory())
delAll(subs[i]);//遞迴刪除子檔案夾內容
rslt = subs[i].delete();//刪除子檔案夾本身
}
rslt = f.delete();//刪除此檔案夾本身
}
if(!rslt)
throw new IOException(無法刪除:+f.getName()); return;
}
public static void main(String[] args) {
DeleteAll da= new DeleteAll();
try {
da.delAll(new File(someDir));
}
catch (IOException ex)
{
ex.printStackTrace(); }
}}