手机本地文档文件不能扫描出来的问题

本文针对Android手机文件扫描中无法识别特定文档格式的问题,提供了一种改进的扫描方法,通过自定义查询字段,确保.docx、.xls、.xlsx、.rar等文件能够被正确识别,适用于需要全面文件管理的应用场景。

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

此类文章的优质博客也有很对,推荐Android手机文件快速扫描我这里主要是记录下文档文件扫描不出的问题:

是由于有些文档不能通过mime_type查询出来的文档 如:.docx .xls .xlsx .rar等,需要在扫描select字段中设置下:


String selection = buildOfficeSelectionStr();
Cursor cursor = contentResolver.query(MediaStore.Files.getContentUri("external"), projection,
                                      selection, null, null);
                                      
/**
 * 构造文件的查询字段
 *
 * @return 文件查询的字段
 */
private static String buildOfficeSelectionStr() {
    return "(" +
        //Excel
        MediaStore.Files.FileColumns.DATA + " LIKE '%.xls'" +
        " or " + MediaStore.Files.FileColumns.DATA + " LIKE '%.xlsx'" +
        " or " + MediaStore.Files.FileColumns.DATA + " LIKE '%.xlsm'" +
        " or " + MediaStore.Files.FileColumns.DATA + " LIKE '%.xltx'" +
        " or " + MediaStore.Files.FileColumns.DATA + " LIKE '%.xltm'" +
        " or " + MediaStore.Files.FileColumns.DATA + " LIKE '%.xlam'" +
        // PowerPoint
        " or " + MediaStore.Files.FileColumns.DATA + " LIKE '%.pptx'" +
        " or " + MediaStore.Files.FileColumns.DATA + " LIKE '%.pptm'" +
        " or " + MediaStore.Files.FileColumns.DATA + " LIKE '%.potm'" +
        " or " + MediaStore.Files.FileColumns.DATA + " LIKE '%.potx'" +
        " or " + MediaStore.Files.FileColumns.DATA + " LIKE '%.ppsx'" +
        " or " + MediaStore.Files.FileColumns.DATA + " LIKE '%.ppsm'" +
        " or " + MediaStore.Files.FileColumns.DATA + " LIKE '%.sldx'" +
        " or " + MediaStore.Files.FileColumns.DATA + " LIKE '%.thmx'" +
        " or " + MediaStore.Files.FileColumns.DATA + " LIKE '%.ppt'" +
        // Word
        " or " + MediaStore.Files.FileColumns.DATA + " LIKE '%.dotm'" +
        " or " + MediaStore.Files.FileColumns.DATA + " LIKE '%.docx'" +
        " or " + MediaStore.Files.FileColumns.DATA + " LIKE '%.docm'" +
        " or " + MediaStore.Files.FileColumns.DATA + " LIKE '%.dotx'" +
        " or " + MediaStore.Files.FileColumns.DATA + " LIKE '%.doc'" +
        // Project
        " or " + MediaStore.Files.FileColumns.DATA + " LIKE '%.mpp'" +
        // Visio
        " or " + MediaStore.Files.FileColumns.DATA + " LIKE '%.vsd'" +
        // Access
        " or " + MediaStore.Files.FileColumns.DATA + " LIKE '%.mdb'" +
        " or " + MediaStore.Files.FileColumns.DATA + " LIKE '%.mde'" +
        " or " + MediaStore.Files.FileColumns.DATA + " LIKE '%.accdb'" +
        " or " + MediaStore.Files.FileColumns.DATA + " LIKE '%.rar'" + ")";
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值