5

我正在使用以下代码从图库中获取文件。我检索的文件是图像文件、视频文件或基于用户选择的音频文件。

现在我在列表视图中显示从库中检索的文件。但我无法区分用户选择的文件是图像文件(即 .jpg / .png)还是视频文件或音频文件。

通过获取扩展名并在 if else 条件下检查它,我知道这是可能的。但我想知道它是否有任何可能的方法来做到这一点

用于从图库中获取图像的代码是

Intent intent = new Intent();
intent.setAction(Intent.ACTION_GET_CONTENT);
intent.setType("*/*");
intent.putExtra(Intent.EXTRA_LOCAL_ONLY, true);
startActivityForResult(intent, GET_VIDEO_AUDIO);    
                            fileTransferDialog.dismiss();
4

3 回答 3

11

只需检查文件的 MIME 类型。看看这个

https://stackoverflow.com/a/13889946/1570662

这可能会有所帮助

private static String getMimeType(String fileUrl) {
    String extension = MimeTypeMap.getFileExtensionFromUrl(fileUrl);
    return MimeTypeMap.getSingleton().getMimeTypeFromExtension(extension);
}
于 2013-06-20T11:48:57.530 回答
0

看看这个。通过确定文件的 MIME 类型,您可以评估正在处理的文件。还有这个,可用于确定 MIME 类型等。

于 2013-06-20T11:54:26.750 回答
0

您可以获取文件的类型以识别文件类型是照片还是视频。

        String ext = file.getName().substring(file.getName().indexOf(".") + 1);

            if (ext.equalsIgnoreCase("jpg")
                        || ext.equalsIgnoreCase("png")
                        || ext.equalsIgnoreCase("jpeg")) {
                  type = "photo";
            }
于 2013-06-20T12:01:01.353 回答