我有一个图像URI,我想将此URI转换为真实路径。我看了很多答案,但没有一个对我有用。我正在使用棉花糖6.0.1。图片URI为content://com.android.providers.media.documents/document/image%3A52530
。
码:
sendImageFromFolder.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent();
intent.setType("image/*");
intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(intent,"Select Picture"), 1);
}
});
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(requestCode==1) {
Uri uri = data.getData();//how to convert this uri to real path .
}
}
A Uri
不是File
。A Uri
不必代表您可以访问的文件系统上的文件。将Uri
可能指向的内容是:
ContentProvider
需要解密时ContentProvider
需要将其加载并提供服务ContentProvider
需要下载您可以使用ContentResolver
和openInputStream()
获取InputStream
所代表的内容Uri
。您可以FileOutputStream
在自己控制的某个文件上创建一个。而且,您可以使用Java
I / O从InputStream
到进行复制OutputStream
,从而在您控制的文件中创建内容的自己的副本。
问题内容: 我在Android 6.0(棉花糖)上遇到了日期格式问题。引发以下异常的代码是我的应用程序用于API请求(“客户端”)的纯Java库(单独构建)。如果相关的话,该库是用Java 1.6构建的……无论如何,这是代码。 … 具有价值; …“修剪”之后是; 该代码自Froyo成立以来一直有效,并且已经过单元测试。除了棉花糖,所有东西都会抛出异常。 偏移量“ 21”是10:59中“ 9”之后的
问题内容: 我正在创建一个可产生现场乐器声音的应用程序,并且计划使用Android棉花糖(6.0版)中的新Midi API。我已经在http://developer.android.com/reference/android/media/midi/package- summary.html上 阅读了软件包概述文档,并且我知道如何生成Midi笔记,但是我仍然不确定:我该怎么办在生成它们的Midi数据
我有一个应用程序,可以用相机拍摄视频。我可以获取视频的文件路径,但我需要它作为Uri。 我得到的文件路径: 我需要的是这样的: 这是我的密码。 我需要一个Uri从字符串变量。
问题内容: 我有一个curl命令,用于elasticsearch聚合,如下所示。 我想在浏览器中将以上这些卷曲搜索到我的htmlpage中,如何将其转换为类似Elasticsearch中URI搜索的普通url? 请帮助我将上面的内容转换为url吗? 问题答案: 您可以使用查询字符串参数,以便直接在URL中传递正文
我在尝试选择文件时获得URI: /外部/文件/15499 我如何将它转换成真实的文件路径? 注意:我阅读了以下主题: null
我尝试了一个可以正常工作的解决方案(见下文),除了在Android 4.4中调用会带来一个名为“从”打开的活动,其中有“最近”、“图像”、“下载”以及几个应用程序可供选择。当我选择图像并尝试解析返回的内容URI(使用下面的代码)时,调用返回null。如果我使用库应用程序选择完全相同的文件,返回文件路径。我只在API级别16和19中测试过这个。一切工作在16预期。至于19去,我必须选择画廊或其他应用