A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 天地有我 中级黑马   /  2013-8-10 13:46  /  1671 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 天地有我 于 2013-8-10 17:38 编辑

删除给定的一个目录中的所有文件
撤销删除(撤销上面刚删除的目录)功能

只实现删除功能,回收站功能如何添加。
public class DleteDemo
{      
      // 删除功能 ,path为要删除的文件目录
        public static void delete(String path)
        {
                File file = new File(path);
                if(!file.exists())
                {
                        System.out.println("文件/目录:不存在");
                }
                else
                {
                        if (file.isFile())
                        {
                                file.delete();
                        }
                        else
                        {
                                File[] files = file.listFiles();
                                if (files.length == 0)
                                {
                                        file.delete();
                                }
                                else
                                {
                                        for (File file2 : files)
                                        {
                                                delete(file2.getPath());
                                        }
                                        file.delete();
                                }
                }
               
                }
        }
        
        
        public static void main(String[] args)
        {
                  delete("D:/test - 副本");
        }
}


评分

参与人数 1技术分 +1 收起 理由
神之梦 + 1

查看全部评分

2 个回复

倒序浏览
你想实现撤销删除,自然就不能直接使用delete方法,而是要先备份文件的副本,将要删除的内容复制到你设置好的回收站文件夹区域中,然后在删除原文件。想要撤销再把备份的文件拷贝回原位置就好了。这样在删除原始文件之前还要搞个配置文件来记录要删除文件的文件名和原始存放位置,便于以后恢复。简单想一下,我的大概思路就是这样。。其他还可以模拟windows中的回收站,给你设置的回收站空间设置个容量上限啥的,这样可能还要一个单独的类来管理回收站空间。
回复 使用道具 举报
基本思路我还是有(跟你的差不多),就是求人帮忙实现一下。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马