您的位置:首页 > 其它

确认是否删除文件夹/文件夹?

2012-04-09 18:02 204 查看
public void confirmDel(final String path ,final int folder){
    	AlertDialog.Builder ad1=new AlertDialog.Builder(FileManagerActivity.this);
    	ad1.setTitle("删除文件夹?");
    	ad1.setPositiveButton("是", new DialogInterface.OnClickListener() {
			public void onClick(DialogInterface dialog, int i) {
				// TODO Auto-generated method stub
				if (folder==1) {
					delFolder(path);	
				}
				else {
					delFile(path);
				}
				
			}
		});
    	ad1.setNegativeButton("否",new DialogInterface.OnClickListener() {
			public void onClick(DialogInterface dialog, int i) {
				
			}
		});
    	ad1.show();//显示对话框
    }
    
    public boolean delFile(String path) {
    	File file = new File(path);
    	return file.delete();
    	//return true;
	}
    
    public void delFolder(String folderPath) {
        try {
                delAllFile(folderPath); //删除完里面所有内容
                String filePath = folderPath;
                filePath = filePath.toString();
                java.io.File myFilePath = new java.io.File(filePath);
                myFilePath.delete(); //删除空文件夹

        }
        catch (Exception e) {
                System.out.println("删除文件夹操作出错");
                e.printStackTrace();

        }
}

    /**
     * 删除文件夹里面的所有文件
     * @param path String 文件夹路径 如 c:/fqf
     */
    public void delAllFile(String path) {
        File file = new File(path);
        if (!file.exists()) {
                return;
        }
        if (!file.isDirectory()) {
       return;
        }
        String[] tempList = file.list();
        File temp = null;
        for (int i = 0; i < tempList.length; i++) {
                if (path.endsWith(File.separator)) {
                        temp = new File(path + tempList[i]);
                }
                else {
                        temp = new File(path + File.separator + tempList[i]);
                }
                if (temp.isFile()) {
                        temp.delete();
                }
                if (temp.isDirectory()) {
                        delAllFile(path+"/"+ tempList[i]);//先删除文件夹里面的文件
                        delFolder(path+"/"+ tempList[i]);//再删除空文件夹
                }
        }


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐