我使用以下代码获取mime类型的文件:

private String getMimeType(String url) {

String type = null;

String extension = MimeTypeMap.getFileExtensionFromUrl(url);

Log.e("extension ", extension);

if (extension != null) {

MimeTypeMap mime = MimeTypeMap.getSingleton();

type = mime.getMimeTypeFromExtension(extension);

}

return type;

}

where url is the absolute file path

i am getting file and folder by the following way

File file_arr [];

file_arr = new File(Environment.getExternalStorageDirectory().getPath()).listFiles();

url = file_arr[i].getAbsolutePath();

这是正确的,但它返回null,对于哪个文件在其文件名中有点".".

例如

如果文件名是picture1.jpg那么getMimeType()返回image/jpeg

在文件名的情况下,例子27-05-2012 22.05.14.jpg的名称中有点(.),则getMimeType()返回null.

我已将文件重命名为27-05-2012.jpg,其返回图像/ jpeg.

我的问题如何获取Android上所有类型的文件名(有点或特殊字符)的mime类型?请帮我.

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐