获取文件格式的方法

本文介绍了一种在Android中通过获取文件扩展名并映射到MIME类型的方法来打开指定文件的技术实现细节。此方法利用MimeTypeMap类实现了从文件路径中提取扩展名,并进一步转换为MIME类型,从而设置Intent来启动相应的应用程序以打开文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MimeTypeMap.getSingleton().getExtensionFromMimeType(mimeType)传入的参数使用 typeFromExt 替换。

public static void openFile( Context context, final String filePath ) {
    String ext = filePath.substring( filePath.lastIndexOf( '.' ) ).toLowerCase( Locale.US );
    try {
        MimeTypeMap mimeTypeMap = MimeTypeMap.getSingleton();
        String temp = ext.substring( 1 );
        String mime = mimeTypeMap.getMimeTypeFromExtension( temp );

        Intent intent = new Intent();
        intent.setAction( android.content.Intent.ACTION_VIEW );
        File file = new File( filePath );
        intent.setDataAndType( Uri.fromFile( file ), mime );
        context.startActivity( intent );
    } catch ( Exception e ) {
        e.printStackTrace();
        Toast.makeText( context, "无法打开后缀名为." + ext + "的文件!",
                Toast.LENGTH_LONG ).show();
    }
}

转载于:https://my.oschina.net/u/3705875/blog/1649629

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值