本文介绍了如何确定MIME类型的文件中的android?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
假如我有一个像文件的完整路径:(/ SD卡/ tlogo.png)。我想知道它的MIME类型。
我创建了一个功能,它
公共静态字符串getMimeType(档案文件,上下文语境)
{
开放的我们的uri = Uri.fromFile(文件);
ContentResolver的CR = context.getContentResolver();
MimeTypeMap哑剧= MimeTypeMap.getSingleton();
字符串类型= mime.getExtensionFromMimeType(cR.getType(URI));
返回类型;
}
但是当我调用它,则返回null。
文件文件=新的文件(文件路径);
字符串的fileType = CommonFunctions.getMimeType(文件,背景);
解决方案
首先,你应该考虑调用 MimeTypeMap#getMimeTypeFromExtension()
,像这样的:
// URL =文件路径或任何你想要的合适的URL。
公共静态字符串getMimeType(字符串URL){
字符串类型= NULL;
字符串延长= MimeTypeMap.getFileExtensionFromUrl(URL);
如果(扩展!= NULL){
类型= MimeTypeMap.getSingleton()getMimeTypeFromExtension(扩展)。
}
返回类型;
}
Suppose I have a full path of file like:(/sdcard/tlogo.png). I want to know its mime type.
I created a function for it
public static String getMimeType(File file, Context context)
{
Uri uri = Uri.fromFile(file);
ContentResolver cR = context.getContentResolver();
MimeTypeMap mime = MimeTypeMap.getSingleton();
String type = mime.getExtensionFromMimeType(cR.getType(uri));
return type;
}
but when i call it, it returns null.
File file = new File(filePath);
String fileType=CommonFunctions.getMimeType(file, context);
解决方案
First and foremost, you should consider calling MimeTypeMap#getMimeTypeFromExtension()
, like this:
// url = file path or whatever suitable URL you want.
public static String getMimeType(String url) {
String type = null;
String extension = MimeTypeMap.getFileExtensionFromUrl(url);
if (extension != null) {
type = MimeTypeMap.getSingleton().getMimeTypeFromExtension(extension);
}
return type;
}
这篇关于如何确定MIME类型的文件中的android?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!