【发布时间】:2015-09-16 03:44:56
【问题描述】:
我正在使用 ACTION_GET_CONTENT 以便用户可以选择我的其余代码可以读取和处理的文本文件。
Intent intent = new Intent();
intent.setAction(Intent.ACTION_GET_CONTENT);
intent.setType("text/*");
startActivityForResult(Intent.createChooser(intent, "select data"), SELECT_DATA);
上面是我的代码,以便用户可以浏览哪些工作正常。
Uri DataUri = data.getData();
File FileUri = new File(DataUri.getPath());
如果我在使用 getPath 或 getAbsolutePath 后将 DataUri 或 FileUri 转换为字符串,则会得到完全错误的路径。
路径应该是/storage/emulated/0/Documents/myFile,但它给了我/document/primary:Documents/myFile。我不知道这个“primary:Documents”是什么。
intent 本身的数据已经有错误的路径,有什么建议吗?
【问题讨论】:
-
The path should be ...是什么让你这么想?是什么让您认为您收到的 Uri 代表一个文件对象?还有许多其他类型的资源可以用 Uri 表示。