android 删除文件,打开指定的文件类型 public class FileUtils {
/** * 删除指定文件 * * @param fileNames */ public static void deleteFiles(String... fileNames) { if (fileNames.length <= 0) return; for (int i = 0; i < fileNames.length; i++) { File file = new File(fileNames[i]); if (file.exists()) file.delete();
} }
/** * 删除指定文件夹下的所有文件 * * @param path * @return */ public static boolean delAllFile(String path) { boolean flag = false; File file = new File(path); if (!file.exists()) { return flag; } if (!file.isDirectory()) { return flag; } 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()) { long lastModeify = temp.lastModified(); long current = new Date().getTime(); Log.e("文件创建时间", "current=" + current + " lastModeify=" + lastModeify); if (current - lastModeify > (1000 * 60 * 60 * 24 * 3)) { temp.delete(); } } if (temp.isDirectory()) { delAllFile(path + "/" + tempList[i]);// 先删除文件夹里面的文件 flag = true; } } return flag; }
/** * 文件是否存在 * * @param nativePath * @return */ public static boolean isExists(String nativePath) { File file = new File(nativePath); return file.exists();
}
/** * 打开文件的方式 * * @param f文件对象 */ public static void openFile(File f, Context context) { if (!f.exists()) {
Toast.makeText(context, "文件尚未下载,无法查看,请您先下载文件!", Toast.LENGTH_SHORT) .show(); return; }
Intent intent = new Intent(); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.setAction(android.content.Intent.ACTION_VIEW);
/* 调用getMIMEType()来取得MimeType */ String type = getMIMEType(f); /* 设置intent的file与MimeType */ intent.setDataAndType(Uri.fromFile(f), type); context.startActivity(intent); }
/* 判断文件MimeType的method */ private static String getMIMEType(File f) { String type = ""; String fName = f.getName(); /* 取得扩展名 */ String end = fName .substring(fName.lastIndexOf(".") + 1, fName.length()) .toLowerCase();
/* 依扩展名的类型决定MimeType */ if (end.equals("m4a") || end.equals("mp3") || end.equals("mid") || end.equals("xmf") || end.equals("ogg") || end.equals("wav") || end.equals("wma")) { type = "audio"; } else if (end.equals("3gp") || end.equals("mp4")) { type = "video"; } else if (end.equals("jpg") || end.equals("gif") || end.equals("png") || end.equals("jpeg") || end.equals("bmp")) { type = "image"; } else if (end.equals("apk")) { /* android.permission.INSTALL_PACKAGES */ type = "application/vnd.android.package-archive"; } else { type = "*"; } /* 如果无法直接打开,就跳出软件列表给用户选择 */ if (end.equals("apk")) { } else { type += "/*"; } return type; }

更多相关文章

  1. Android(安卓)Studio2.0引入so文件(亲测)
  2. android 设备开发 让应用程序出现在模拟器启动列表中
  3. [Android(安卓)Pro] 创建快捷方式,删除快捷方式,查询是否存在快捷
  4. android解析xml文件 Android(安卓)DOM解析XML之全球实时地震信息
  5. 在android里保存数据的三种形式(Saving Data)
  6. android tcpdump
  7. android Handlerr.removeCallbacksAndMessages(null)的妙用
  8. Android: TextView with border 带边框的TextView
  9. Android读写文件源码

随机推荐

  1. Android(安卓)Handler 消息机制原理解析
  2. 简单实现Android顶部工具栏和底部工具栏(
  3. 【Android热修复与插件化 三】ClassLoade
  4. 介绍一个Android开源项目:GifView——Andr
  5. android 5.0多用户支持
  6. Android中做一个无标题窗口
  7. Android不依赖Activity的全局悬浮窗实现
  8. 使用eclipse打开android_sdk自带的例子
  9. android之照相、相冊裁剪功能的实现过程
  10. Android(安卓)实现全屏显示的几种方法整