android 打开附件

来源:互联网 发布:淘宝小也家是正品吗 编辑:程序博客网 时间:2024/05/15 23:53
import java.io.File;import android.content.Intent;import android.net.Uri;/** * 名称:AndroidFileUtil *  * 描述:打开文件工具类 */public class AndroidFileUtil {    public static Intent openFile(String filePath) {        System.out.println("打开的文件路径 : " + filePath);        File file = new File(filePath);        if (!file.exists()) {            return null;        }        /* 取得扩展名 */        String fileName = file.getName();        String end = fileName.substring(file.getName().lastIndexOf(".") + 1,                file.getName().length()).toLowerCase();        /* 依扩展名的类型决定MimeType */        Intent intent = null;        if (end.equals("jpg") || end.equals("gif") || end.equals("png")                || end.equals("jpeg") || end.equals("bmp")) {            intent = getImageFileIntent(filePath);        } else if (end.equals("ppt")) {            intent = getPptFileIntent(filePath);        } else if (end.equals("xls")) {            intent = getExcelFileIntent(filePath);        } else if (end.equals("doc")) {            intent = getWordFileIntent(filePath);        } else if (end.equals("docx")) {            intent = getWordFileIntent(filePath);        } else if (end.equals("pdf")) {            intent = getPdfFileIntent(filePath);        } else if (end.equals("chm")) {            intent = getChmFileIntent(filePath);        } else if (end.equals("txt")) {            intent = getTextFileIntent(filePath, false);        }        return intent;    }    // 播放音乐    public static Intent openMusic(String filePath) {        System.out.println("打开的文件路径 : " + filePath);        File file = new File(filePath);        if (!file.exists()) {            return null;        }        /* 取得扩展名 */        String fileName = file.getName();        String end = fileName.substring(file.getName().lastIndexOf(".") + 1,                file.getName().length()).toLowerCase();        /* 依扩展名的类型决定MimeType */        Intent intent = null;        intent = new Intent("android.intent.action.VIEW");        intent.addCategory("android.intent.category.DEFAULT");        intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);        Uri uri = Uri.fromFile(new File(filePath));        intent.setDataAndType(uri, "audio/*");        return intent;    }    public static Intent getImageFileIntent(String param) {        Intent intent = new Intent("android.intent.action.VIEW");        intent.addCategory("android.intent.category.DEFAULT");        intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);        Uri uri = Uri.fromFile(new File(param));        intent.setDataAndType(uri, "image/*");        return intent;    }    // Android获取一个用于打开PPT文件的intent    public static Intent getPptFileIntent(String param) {        Intent intent = new Intent("android.intent.action.VIEW");        intent.addCategory("android.intent.category.DEFAULT");        intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);        Uri uri = Uri.fromFile(new File(param));        intent.setDataAndType(uri, "application/vnd.ms-powerpoint");        return intent;    }    // Android获取一个用于打开Excel文件的intent    public static Intent getExcelFileIntent(String param) {        Intent intent = new Intent("android.intent.action.VIEW");        intent.addCategory("android.intent.category.DEFAULT");        intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);        Uri uri = Uri.fromFile(new File(param));        intent.setDataAndType(uri, "application/vnd.ms-excel");        return intent;    }    // Android获取一个用于打开Word文件的intent    public static Intent getWordFileIntent(String param) {        Intent intent = new Intent("android.intent.action.VIEW");        intent.addCategory("android.intent.category.DEFAULT");        intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);        Uri uri = Uri.fromFile(new File(param));        intent.setDataAndType(uri, "application/msword");        return intent;    }    // Android获取一个用于打开CHM文件的intent    public static Intent getChmFileIntent(String param) {        Intent intent = new Intent("android.intent.action.VIEW");        intent.addCategory("android.intent.category.DEFAULT");        intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);        Uri uri = Uri.fromFile(new File(param));        intent.setDataAndType(uri, "application/x-chm");        return intent;    }    // Android获取一个用于打开文本文件的intent    public static Intent getTextFileIntent(String param, boolean paramBoolean) {        Intent intent = new Intent("android.intent.action.VIEW");        intent.addCategory("android.intent.category.DEFAULT");        intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);        if (paramBoolean) {            Uri uri1 = Uri.parse(param);            intent.setDataAndType(uri1, "text/plain");        } else {            Uri uri2 = Uri.fromFile(new File(param));            intent.setDataAndType(uri2, "text/plain");        }        return intent;    }    // Android获取一个用于打开PDF文件的intent    public static Intent getPdfFileIntent(String param) {        Intent intent = new Intent("android.intent.action.VIEW");        intent.addCategory("android.intent.category.DEFAULT");        intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);        Uri uri = Uri.fromFile(new File(param));        intent.setDataAndType(uri, "application/pdf");        return intent;    }}
原创粉丝点击