content uri可以用于上传文件吗?如果不能,怎么转成绝对路径?

content uri可以用于上传文件吗?如果不能,怎么转成绝对路径?

normalAddImage.setOnClickListener(view -> {
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);//意图:文件浏览器
intent.setType("*/*");//无类型限制
intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);//关键!多选参数
intent.putExtra(Intent.EXTRA_MIME_TYPES, new String[]{
"image/*", "video/*", "application/msword", "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
"application/pdf", "application/vnd.ms-excel", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "application/vnd.ms-powerpoint",
"application/vnd.openxmlformats-officedocument.presentationml.presentation", "text/*", "application/zip", "application/x-rar-compressed"
});
intent.addCategory(Intent.CATEGORY_OPENABLE);
startActivityForResult(intent, 1);
});

我用上面代码打开了文件浏览器。选择文件后,返回了文件的content URI,像这样的:

content://com.android.externalstorage.documents/document/primary%3Alog.txt

​content://com.android.providers.media.documents/document/image%3A618580

这样的路径可以用于http文件上传吗?

如果不能,那怎么转化成Android的绝对路径呢?

我在网上搜到了转化的方法,但转化失败了。

谢谢老师。

http://img1.sycdn.imooc.com//climg/5ff7cd3b0935207410260403.jpg

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学,你好。需要改为绝对路径,可以直接改成绝对路径,例如上面的txt,可以改为sdk下的log.txt文件,这就是它的绝对路径,如果用代码实现的话可以参见  https://bbs.csdn.net/topics/392042861?utm_medium=distribute.pc_relevant.none-task-discussion_topic-BlogCommendFromBaidu-4.control&depth_1-utm_source=distribute.pc_relevant.none-task-discussion_topic-BlogCommendFromBaidu-4.control

祝学习愉快!

  • 但这个方法对我选择的图片还是返回null,如果这个转化太复杂,那么能让文件浏览器直接返回绝对路径吗?

    2021-01-08 13:31:02
  • 你的图片是不是没有给出全路径?你直接用image吧。浏览器的内容改变不了。


    2021-01-08 14:35:33
  • http://img1.sycdn.imooc.com//climg/5ff804b50989ed7111140430.jpg

    图片路径是给全了的,但不知道为什么没有后缀名;直接用image是指什么,我没有理解到您的意思。

    2021-01-08 15:08:33
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
2.Android 网络操作与流行框架
  • 参与学习           人
  • 提交作业       220    份
  • 解答问题       1800    个

本阶段是联网及数据处理的必备技能。课程从网络基础知识到线程间协同工作、异步下载处理;从文件存储、到轻量级数据库SQLite的使用;最后利用最流程的第三方框架助你快速开发企业级APP。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师