给出URI:
content://com.app.exam.provider/files/image/a590d119-f234-482e-9218-1d89f9829a8b.jpg
我正在滑行加载,正在工作。但我还需要访问文件才能上传图像。
答案 0 :(得分:0)
用于从可用的uri获取文件路径;使用这个:-
String file_path = yourUri.uri.getpath();
还要从此uri获取文件对象:-
File file_obj = new File(new URI(file_path));
答案 1 :(得分:0)
我正在使用此代码从图像URI中获取文件名。
/**
*
* @param image
* @return
*/
private String getImageFilename(Uri image) {
if (image != null) {
String path = getRealPathFromURI(this.context(), image);
if (path != null) {
return path.substring(path.lastIndexOf("/") + 1);
} else {
return null;
}
} else {
return null;
}
}
/**
* Gets the file path from a given URI.
* @param context
* @param contentUri
* @return
*/
private String getRealPathFromURI(Context context, Uri contentUri) {
Cursor cursor = null;
try {
if (contentUri != null) {
String[] tempArray = {MediaStore.Images.Media.DATA};
cursor = context.getContentResolver().query(contentUri, tempArray, null, null, null);
if (cursor != null) {
int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
cursor.moveToFirst();
return cursor.getString(column_index);
} else {
return null;
}
} else {
return null;
}
} catch (Exception e) {
printLogMessage(e);
return null;
} finally {
if (cursor != null) {
cursor.close();
}
}
}
如果您遇到这种情况,请告诉我。