代码之家  ›  专栏  ›  技术社区  ›  fixxer

如何在Android中确定文件类型

  •  4
  • fixxer  · 技术社区  · 15 年前

    在Android中,确定文件类型的最佳方法是什么?

    我想检查给定的文件是否是图像、音乐文件等。

    3 回复  |  直到 11 年前
        1
  •  4
  •   Octavian Helm    14 年前
    1. 包括一些 mime.types 资产文件夹中的文件(例如来自/etc/mime.types)。
    2. 包括 activation.jar (来自JAF)在您的构建路径中。
    3. 使用类似的方法:

      try {
          MimetypesFileTypeMap mftm = 
              new MimetypesFileTypeMap(getAssets().open("mime.types"));
          FileTypeMap.setDefaultFileTypeMap(mftm);
      } catch (FileNotFoundException e) {
          // TODO Auto-generated catch block
          e.printStackTrace();
      } catch (IOException e) {
          // TODO Auto-generated catch block
          e.printStackTrace();
      }
      
    4. 然后使用 FileDataSource.getContentType() 获取文件类型。

        2
  •  2
  •   sashkello    11 年前
    public static String getMimeType(String fileUrl) {
        String extension = MimeTypeMap.getFileExtensionFromUrl(fileUrl);
        final String mimeType = MimeTypeMap.getSingleton().getMimeTypeFromExtension(extension);
        return (mimeType !=  null) ? mimeType : "unknown";
    }
    
        3
  •  0
  •   Cytown    15 年前

    常见的方法是只通过它们的扩展,或者您可以解析报头,但是对于您的应用程序来说,它应该太慢和复杂了。

    推荐文章