android 打开文件

转自:android 打开文件

  1. privatevoidopenFile(Filef)
  2. {
  3. Intentintent=newIntent();
  4. intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
  5. intent.setAction(android.content.Intent.ACTION_VIEW);
  6. /*调用getMIMEType()来取得MimeType*/
  7. Stringtype=getMIMEType(f);
  8. /*设置intent的file与MimeType*/
  9. intent.setDataAndType(Uri.fromFile(f),type);
  10. startActivity(intent);
  11. }
  12. /*判断文件MimeType的method*/
  13. privateStringgetMIMEType(Filef)
  14. {
  15. Stringtype="";
  16. StringfName=f.getName();
  17. /*取得扩展名*/
  18. Stringend=fName.substring(fName.lastIndexOf(".")
  19. +1,fName.length()).toLowerCase();
  20. /*依扩展名的类型决定MimeType*/
  21. if(end.equals("m4a")||end.equals("mp3")||end.equals("mid")||
  22. end.equals("xmf")||end.equals("ogg")||end.equals("wav"))
  23. {
  24. type="audio";
  25. }
  26. elseif(end.equals("3gp")||end.equals("mp4"))
  27. {
  28. type="video";
  29. }
  30. elseif(end.equals("jpg")||end.equals("gif")||end.equals("png")||
  31. end.equals("jpeg")||end.equals("bmp"))
  32. {
  33. type="image";
  34. }
  35. elseif(end.equals("apk"))
  36. {
  37. /*android.permission.INSTALL_PACKAGES*/
  38. type="application/vnd.android.package-archive";
  39. }
  40. else
  41. {
  42. type="*";
  43. }
  44. /*如果无法直接打开,就跳出软件列表给用户选择*/
  45. if(end.equals("apk"))
  46. {
  47. }
  48. else
  49. {
  50. type+="/*";
  51. }
  52. returntype;
  53. }
private void openFile(File f) { 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); startActivity(intent); } /* 判断文件MimeType的method */ private 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")) { 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; }




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值