Android递归方式删除某文件夹下的所有文件(.mp3文件等等)

1.由于需要删除文件,因此需要如下权限:

2.核心代码

package com.example.deleteyoumi;

import java.io.File;

import android.os.Bundle;

import android.os.Handler;

import android.os.Message;

import android.app.Activity;

import android.view.Menu;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

import android.widget.Toast;

/*

*@author: ZhengHaibo

*web: http://blog.csdn.net/nuptboyzhb

*mail: zhb931706659@126.com

*2013-4-28 Nanjing,njupt,China

*/

public class DeleteYouMiMainActivity extends Activity implements

OnClickListener {

private Button deleteButton;

private final static String youmiPathString = "/mnt/sdcard/Android/data/.youmicache/";//文件夹的路径

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_delete_you_mi_main);

deleteButton = (Button) findViewById(R.id.delete_youmi);

deleteButton.setOnClickListener(this);

}

@Override

public boolean onCreateOptionsMenu(Menu menu) {

// Inflate the menu; this adds items to the action bar if it is present.

getMenuInflater().inflate(R.menu.delete_you_mi_main, menu);

return true;

}

@Override

public void onClick(View v) {

// TODO Auto-generated method stub

switch (v.getId()) {

case R.id.delete_youmi:

File file = new File(youmiPathString);

DeleteFile(file);

mHandler.sendEmptyMessage(1);

break;

default:

break;

}

}

Handler mHandler = new Handler() {

public void handleMessage(Message msg) {

switch (msg.what) {

case 0:

Toast.makeText(getApplicationContext(), "文件或文件夹不存在", Toast.LENGTH_LONG).show();

break;

case 1:

Toast.makeText(getApplicationContext(), "删除成功!", Toast.LENGTH_LONG).show();

break;

default:

break;

}

};

};

/**

* 递归删除文件和文件夹

*

* @param file

* 要删除的根目录

*/

public void DeleteFile(File file) {

if (file.exists() == false) {

mHandler.sendEmptyMessage(0);

return;

} else {

if (file.isFile()) {

file.delete();

return;

}

if (file.isDirectory()) {

File[] childFile = file.listFiles();

if (childFile == null || childFile.length == 0) {

file.delete();

return;

}

for (File f : childFile) {

DeleteFile(f);

}

file.delete();

}

}

}

}

3.拓展

本文是以删除为例。当然,对于遍历某文件夹下的所有文件均可用这个方法。如搜索.mp3文件等。相关阅读:

PHP学习笔记(二) 了解PHP的基本语法以及目录结构

MySQL左联多表查询where条件写法示例

怎样实现android http-post方法实例说明

基于jQuery实现的仿百度首页滑动选项卡效果代码

Win7关机时不弹出等待后台程序关闭提示框让其快速关机

Win10开始菜单设置为全屏后"设置"选项不见了怎么办?

js 正则表达式之test函数讲解

用JS实现3D球状标签云示例代码

PHP实现连接设备、通讯和发送命令的方法

Windows Insider怎么注册?Windows Insider注册账号及注册网站方法

C#实现图像锐化的方法

PHP正则表达式入门教程(推荐)

用Javascript获取页面元素的具体位置

Javascript函数的参数

android删除文件夹代码,Android_Android递归方式删除某文件夹下的所有文件(.mp3文件等等),1.由于需要删除文件,因此需 - phpStudy...相关推荐

  1. 递归遍历文件及子文件夹下的文件(该代码是复制过来修改过的,如果有侵作者权的话,请作者联系我,立即删除)...

    调用: ListFiles(new DirectoryInfo(source)); /// <summary>/// //递归遍历所有文件包括子文件夹下的文件 并对word excel p ...

  2. android自动悬浮窗代码,Android_Android实现桌面悬浮窗、蒙板效果实例代码,现在很多安全类的软件,比如3 - phpStudy...

    Android实现桌面悬浮窗.蒙板效果实例代码 现在很多安全类的软件,比如360手机助手,百度手机助手等等,都有一个悬浮窗,可以飘浮在桌面上,方便用户使用一些常用的操作. 今天这篇文章,就是介绍如何实 ...

  3. 二叉树的前、中、后序遍历的代码实现(递归方式)

    测试的二叉树的结构 root lfb1 rtb1rtb2 控制台输出的遍历结果 ======从根节点开始,前序遍历此二叉树======= root lfb1 rtb1 rtb2 ======从根节点开 ...

  4. java遍历文件夹的两种方式(递归和非递归)

    非递归方式(有点类似二叉树的非递归遍历,采用链表来存储遍历到的文件夹,如果是文件就直接输出) public void traverseFile(String path){File[] fileArra ...

  5. 各种文件后缀名与打开方式大全a-d

    各种文件后缀名与打开方式大全a-d 2012年01月11日 [b]扩展名 文件类型 打开方式[/b][b] .aiff 声音文件[/b][b] Windows media Player .!!! Ne ...

  6. Ubuntu 18.04下创建新用户/目录、修改用户权限及删除用户的方法

    Ubuntu 18.04下创建新用户/目录.修改用户权限及删除用户的方法 以下介绍在Ubuntu 18.04系统下创建新用户/目录.修改用户权限及删除用户的正确方法.在Ubuntu系统上创建新用户使用 ...

  7. java 文件递归删除文件夹_Java十行代码实现递归删除文件夹中所有文件

    递归删除文件夹中所有文件 要递归首先需要有方法.递归,即方法自己调用自己.一般在程序中很少使用,但在这个实现中,我们无法知道文件夹的深度,更无法根据深度来实现循环的嵌套. 递归两个重要条件: 终止边界 ...

  8. android中资源文件的两种访问方式,Android_Android学习笔记-保存文件(Saving Files),Android设备有两种文件存储区域 - phpStudy...

    Android学习笔记-保存文件(Saving Files) Android设备有两种文件存储区域: 内部存储和外部存储 ("internal" and "externa ...

  9. python永久删除文件_Python彻底删除文件夹及其子文件方式

    我就废话不多说了,直接上代码吧! #coding:utf-8 import os import stat import shutil #filePath:文件夹路径 def delete_file(f ...

最新文章

  1. javascript下載csv檔案
  2. cocos2d-x游戏开发 跑酷(四) 关联与物理世界
  3. 运行在TQ2440开发板上以及X86平台上的linux内核编译
  4. Be My Eyes app:我是你的眼
  5. GBS服装分床裁剪计划软件V4.0正式发布
  6. android反翻译工具下载,安卓dex反编译工具(dex-translator)下载_安卓dex反编译工具(dex-translator)官方下载-太平洋下载中心...
  7. Python小数整数输出
  8. 动词的过去式过去分词表
  9. 在博客中添加动漫美女的js
  10. 抖音 快手 皮皮虾 短视频一次解析
  11. 春节攻防战的战前谋划-电商必看
  12. 利率浮动值60BP什么意思,利率上浮50bp是什么意思
  13. 链表(提高)-数据结构(二)
  14. 当今十大备份应用软件
  15. python 7-33 修理牧场 (25 分) PTA
  16. 服务器五大相关基础知识【转】
  17. 手机照片免费转JPG格式怎么做?教你两个法子快速转换
  18. 空间解析几何:圆柱面一般式方程的推导——已知中轴线和半径
  19. SpringBoot 集成接口文档,老鸟们也被打脸了!
  20. 怀旧服最新pve服务器,部落玩家被歧视了?魔兽怀旧服三个PVE服务器,联盟专享占两个...

热门文章

  1. 用lua扩展你的Nginx(写的非常好)
  2. MySQL覆盖索引:直接从索引查询到了数据
  3. Go的sync.Pool(五)
  4. 自考计算机英语答题技巧,自考英语题型答题技巧-自考英语写作
  5. java线程等待都完成_Java等待线程完成
  6. springboot @value启动报错_打造一个 Spring Boot 注解启动控制开关
  7. java json.stringify_JavaScript如何实现JSON.stringify
  8. oracle取两条sql查询结果的差集,并集,交集
  9. MySQL初始化zabbix_【Zabbix】CentOS6.9系统下部署Zabbix-server 3.0
  10. MySQL Server has gone away报错原因汇总