这个问题的主要思想和标题是一样的——当你从android中的uri获取文件的真实路径时,.get path()和cursor之间有什么区别?

如果你不明白我所说的使用游标的意思,这里是一个例子。

private String getRealPathFromURI(Uri contentURI) {

String result;

Cursor cursor = getContentResolver().query(contentURI, null, null, null, null);

if (cursor == null) { // Source is Dropbox or other similar local file path

result = contentURI.getPath();

} else {

cursor.moveToFirst();

int idx = cursor.getColumnIndex(MediaStore.Images.ImageColumns.DATA);

result = cursor.getString(idx);

cursor.close();

}

return result;

}

最常见的两种方法是这两种,但是使用cursor似乎有点太复杂,而使用一个简单的方法getpath()可以得到相同的结果。所以,我想在某些情况下我应该使用光标,但我不能得到它。

你能解释一下是什么吗?

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐