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的绝对路径呢?
我在网上搜到了转化的方法,但转化失败了。
谢谢老师。
正在回答
同学,你好。需要改为绝对路径,可以直接改成绝对路径,例如上面的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
祝学习愉快!
- 参与学习 人
- 提交作业 220 份
- 解答问题 1800 个
本阶段是联网及数据处理的必备技能。课程从网络基础知识到线程间协同工作、异步下载处理;从文件存储、到轻量级数据库SQLite的使用;最后利用最流程的第三方框架助你快速开发企业级APP。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星