4

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

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

4

3 回答 3

4
  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()获取文件类型。

于 2010-01-11T16:18:15.380 回答
1
public static String getMimeType(String fileUrl) {
    String extension = MimeTypeMap.getFileExtensionFromUrl(fileUrl);
    final String mimeType = MimeTypeMap.getSingleton().getMimeTypeFromExtension(extension);
    return (mimeType !=  null) ? mimeType : "unknown";
}
于 2013-10-26T07:25:01.493 回答
0

一种常见的方法是仅通过它们的扩展名,或者您可以解析标头,但是对于您的应用程序来说它应该太慢且更复杂。

于 2010-01-11T07:57:17.930 回答