gpt4 book ai didi

android - 从内容 URI 获取文件路径

转载 作者:行者123 更新时间:2023-11-29 15:49:40 25 4
gpt4 key购买 nike

我曾经有过这个工作,但现在每次我尝试获取文件路径时它都会失败。我从 Acrobat Reader 接收文件,可以接收文件名和大小,但不能接收相对文件路径。

我的代码是这样的:

if(uri.getScheme().equals("content"))
{
String[] dataFields = new String[]{
MediaStore.MediaColumns.DATA,
OpenableColumns.DISPLAY_NAME,
OpenableColumns.SIZE};
Cursor cursor = context.getContentResolver().query(uri, dataFields, null, null, null);
cursor.moveToFirst();

fileLocation = cursor.getString(cursor.getColumnIndex(MediaStore.MediaColumns.DATA));
title = cursor.getString(cursor.getColumnIndex(OpenableColumns.DISPLAY_NAME));
size = cursor.getInt(cursor.getColumnIndex(OpenableColumns.SIZE));

cursor.close();

contentType = context.getContentResolver().getType(uri);
}

我在 LogCat 中收到以下错误:

Failed to read row 0, column -1 from a CursorWindow which has 1 rows, 2 columns.

我明白了,因为它找不到该列。但是,我不明白这怎么可能?

最佳答案

A Uri is not a file .不要求 Uri 来自 MediaStore 或以其他方式具有 MediaStore.MediaColumns.DATA 列。如果要访问 Uri 表示的内容,请在 ContentResolver 上使用 openInputStream()

关于android - 从内容 URI 获取文件路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30986028/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com