转自:android 打开文件
- privatevoidopenFile(Filef)
- {
- Intentintent=newIntent();
- intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
- intent.setAction(android.content.Intent.ACTION_VIEW);
- /*调用getMIMEType()来取得MimeType*/
- Stringtype=getMIMEType(f);
- /*设置intent的file与MimeType*/
- intent.setDataAndType(Uri.fromFile(f),type);
- startActivity(intent);
- }
- /*判断文件MimeType的method*/
- privateStringgetMIMEType(Filef)
- {
- Stringtype="";
- StringfName=f.getName();
- /*取得扩展名*/
- Stringend=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";
- }
- elseif(end.equals("3gp")||end.equals("mp4"))
- {
- type="video";
- }
- elseif(end.equals("jpg")||end.equals("gif")||end.equals("png")||
- end.equals("jpeg")||end.equals("bmp"))
- {
- type="image";
- }
- elseif(end.equals("apk"))
- {
- /*android.permission.INSTALL_PACKAGES*/
- type="application/vnd.android.package-archive";
- }
- else
- {
- type="*";
- }
- /*如果无法直接打开,就跳出软件列表给用户选择*/
- if(end.equals("apk"))
- {
- }
- else
- {
- type+="/*";
- }
- returntype;
- }