You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android文件选择器筛选.ml后缀文件的实现方案

Android 筛选.ml后缀文件的实现方案

需求:在Android文件选择器中仅显示带有.ml后缀的文件,尝试以下两种常规方法均失效:

  • 通过MimeTypeMap获取.ml对应的MIME类型,返回值为null
  • 设置Intent的EXTRA_MIME_TYPES为"application/ml",无任何效果

由于.ml属于非标准后缀,没有系统默认关联的MIME类型,无法通过系统文件选择器的MIME筛选规则实现目标,且不想采用耗时的递归遍历方案、希望保留文件浏览交互,最终通过自定义文件浏览器实现需求:用ListView展示目录结构,同时筛选出.ml文件。

核心实现代码如下:

public ArrayList<File> startBrowse(File dir, String pattern) {
    browseResult = new ArrayList<>();
    browseResultNames = new ArrayList<>();

    File listFile[] = dir.listFiles();
    if (listFile != null) {
        for (int i = 0; i < listFile.length; i++) {
            // 若是文件夹则直接加入列表
            if (listFile[i].isDirectory()) {
                browseResult.add(listFile[i]);
                browseResultNames.add(listFile[i].getPath());
            }
            else {
                // 筛选符合后缀的文件
                if (listFile[i].getName().endsWith(pattern)){
                    browseResult.add(listFile[i]);
                    browseResultNames.add(listFile[i].getPath());
                }
            }
        }
    }
    return browseResult;
}

内容的提问来源于stack exchange,提问作者Nadin Martini

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 13:45:24