`
strutsliu
  • 浏览: 86347 次
  • 性别: Icon_minigender_1
  • 来自: 漳州
社区版块
存档分类
最新评论

JAVA 递归和非递归删除目录及文件

阅读更多
转载自http://edu.codepub.com/2010/0406/21654.php
递归删除目录就常见了,随便网上搜了一个过来,见下面
import java.io.File;   
  
class DeleteDir {   
  public static void main(String args[]) {   
    deleteDirectory(new File(args[0]));   
  }   
  
  static public boolean deleteDirectory(File path) {   
    if( path.exists() ) {   
      File[] files = path.listFiles();   
      for(int i=0; i<files.length; i++) {   
         if(files[i].isDirectory()) {   
           deleteDirectory(files[i]);   
         }   
         else {   
           files[i].delete();   
         }   
      }   
    }   
    return( path.delete() );   
  }   
}  



非递归的还真没写过。。随便写了一个。仅供参考
import java.io.File;   
import java.util.ArrayList;   
import java.util.List;   
  
  
public class Delete {   
       
    public static void main(String[] args)   
    {   
        File deletePath = new File("你要删除的目录位置");   
        List<String> deleteList = new ArrayList<String>();   
        deleteList.add(deletePath.getPath());   
        while(deleteList.size()>0)   
        {   
            int i = deleteList.size()-1;   
            String currentPath = deleteList.get(i);   
            File[] files = (new File(currentPath)).listFiles();   
            if (files.length == 0) {   
                (new File(currentPath)).delete();   
                deleteList.remove(i);   
            }else {   
                for (int k = 0; k < files.length; k++)    
                {   
                    if(files[k].isDirectory())   
                    {   
                        System.out.println(files[k].getPath());   
                        deleteList.add(files[k].getPath());   
                    }   
                    else  
                    {   
                        System.out.println(files[k].getName());   
                        files[k].delete();   
                    }   
                }   
            }   
        }   
    }   
} 

分享到:
评论

相关推荐

    java源码包---java 源码 大量 实例

     Java zip压缩包查看程序,应用弹出文件选择框,选择ZIP格式的压缩文件,可以像Winrar软件一样查看压缩文件内部的文件及文件夹,源码截图如上所示。 Java 数字签名、数字证书生成源码 2个目标文件 摘要:JAVA源码,...

    JAVA上百实例源码以及开源项目

     Java zip压缩包查看程序,应用弹出文件选择框,选择ZIP格式的压缩文件,可以像Winrar软件一样查看压缩文件内部的文件及文件夹,源码截图如上所示。 Java 数字签名、数字证书生成源码 2个目标文件 摘要:JAVA源码,...

    java源码包4

     Java zip压缩包查看程序,应用弹出文件选择框,选择ZIP格式的压缩文件,可以像Winrar软件一样查看压缩文件内部的文件及文件夹,源码截图如上所示。 Java 数字签名、数字证书生成源码 2个目标文件 摘要:JAVA源码...

    java源码包3

     Java zip压缩包查看程序,应用弹出文件选择框,选择ZIP格式的压缩文件,可以像Winrar软件一样查看压缩文件内部的文件及文件夹,源码截图如上所示。 Java 数字签名、数字证书生成源码 2个目标文件 摘要:JAVA源码...

    JAVA上百实例源码以及开源项目源代码

     Java zip压缩包查看程序,应用弹出文件选择框,选择ZIP格式的压缩文件,可以像Winrar软件一样查看压缩文件内部的文件及文件夹,源码截图如上所示。 Java 数字签名、数字证书生成源码 2个目标文件 摘要:JAVA源码,...

    java源码包2

     Java zip压缩包查看程序,应用弹出文件选择框,选择ZIP格式的压缩文件,可以像Winrar软件一样查看压缩文件内部的文件及文件夹,源码截图如上所示。 Java 数字签名、数字证书生成源码 2个目标文件 摘要:JAVA源码...

    成百上千个Java 源码DEMO 4(1-4是独立压缩包)

    Java zip压缩包查看程序源码 1个目标文件 摘要:Java源码,文件操作,压缩包查看 Java zip压缩包查看程序,应用弹出文件选择框,选择ZIP格式的压缩文件,可以像Winrar软件一样查看压缩文件内部的文件及文件夹,源码...

    成百上千个Java 源码DEMO 3(1-4是独立压缩包)

    Java zip压缩包查看程序源码 1个目标文件 摘要:Java源码,文件操作,压缩包查看 Java zip压缩包查看程序,应用弹出文件选择框,选择ZIP格式的压缩文件,可以像Winrar软件一样查看压缩文件内部的文件及文件夹,源码...

    疯狂JAVA讲义

    1.2 Java的竞争对手及各自优势 4 1.2.1 C#简介和优势 4 1.2.2 Ruby简介和优势 4 1.2.3 Python的简介和优势 5 1.3 Java程序运行机制 5 1.3.1 高级语言的运行机制 6 1.3.2 Java程序的运行机制和JVM 6 1.4 开发...

    java 面试题 总结

    栈是一种线形集合,其添加和删除元素的操作应在同一段完成。栈按照后进先出的方式进行处理。 堆是栈的一个组成元素 19、forward 和redirect的区别 forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL...

    java范例开发大全源代码

     7.1 文件和目录 152  实例116 显示文件的基本信息 152  实例117 显示目录的基本信息 153  实例118 在指定的目录下创建单个文件 156  实例119 在指定的目录下创建多个临时文件 158  实例120 删除...

    java范例开发大全

    7.1 文件和目录 152 实例116 显示文件的基本信息 152 实例117 显示目录的基本信息 153 实例118 在指定的目录下创建单个文件 156 实例119 在指定的目录下创建多个临时文件 158 实例120 删除指定目录下的文件 160 实例...

    Java数据结构和算法中文第二版(1)

    平衡树和非平衡树 使用RBTree专题applet 用专题applet做试验 旋转 插入一个新节点 删除 红-黑树的效率 红-黑树的实现 其他平衡树 小结 问题 实验 第10章 2-3-4树和外部存储 2-3-4树的介绍 Tree234...

    Java范例开发大全 (源程序)

     7.1 文件和目录 152  实例116 显示文件的基本信息 152  实例117 显示目录的基本信息 153  实例118 在指定的目录下创建单个文件 156  实例119 在指定的目录下创建多个临时文件 158  实例120 删除指定目录...

    Java面试宝典-经典

    2、编写一个程序,将d:\java目录下的所有.java文件复制到d:\jad目录下,并将原来文件的扩展名从.java改为.jad。 62 3、编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串,但要保证...

    Java面试宝典2010版

    2、编写一个程序,将d:\java目录下的所有.java文件复制到d:\jad目录下,并将原来文件的扩展名从.java改为.jad。 62 3、编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串,但要保证...

    Java范例开发大全(全书源程序)

    7.1 文件和目录 152 实例116 显示文件的基本信息 152 实例117 显示目录的基本信息 153 实例118 在指定的目录下创建单个文件 156 实例119 在指定的目录下创建多个临时文件 158 实例120 删除指定目录下的文件 ...

    java面试题大全(2012版)

    2、编写一个程序,将d:\java目录下的所有.java文件复制到d:\jad目录下,并将原来文件的扩展名从.java改为.jad。 62 3、编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串,但要保证...

    java范例开发大全(pdf&源码)

    7.1 文件和目录 152 实例116 显示文件的基本信息 152 实例117 显示目录的基本信息 153 实例118 在指定的目录下创建单个文件 156 实例119 在指定的目录下创建多个临时文件 158 实例120 删除指定目录下的文件 160 实例...

Global site tag (gtag.js) - Google Analytics