本帖最后由 曹睿翔 于 2013-6-14 23:31 编辑
- /*
- 思想:
- 递归遍历指定文件夹,遍历到最内层的文件夹时,删除文件夹中所有后,再删除该文件夹
- 然后由内向外删除,因为只有文件夹为空时才能删除该文件夹.
- */
- import java.io.File;
- public class FileTraversalDemo {
- public static void main(String[] args) {
- File f = new File("E:\\123");
- Traverse.removeall(f);
- }
- }
- class Traverse {
- public static void removeall(File f){
-
- File[] farr=f.listFiles();
- if(farr==null || farr.length==0){//f为文件或f为空文件夹
- f.delete();
- return;
- }
- else{
- for(int i=0;i<farr.length;i++){//farr.length
- //需要判断遍历到的是文件还是文件夹
- if(farr.isDirectory())
- removeall(farr[i]);
- else
- farr[i].delete();
- }
- System.out.println(f+":"+f.delete());//删除完文件夹中文件,删除该文件夹
- }
- }
-
-
复制代码 |