如何在不新建文件的情况下构建File Uri?

时间:2013-07-16 04:22:22

标签: android

我需要从文件路径构建一个Uri对象,但是使用Uri.fromFile(new File(path))太慢了,所以我想手动构建它。

首先,Uri.parse("file://" + path)不起作用,因为它不对路径进行路径编码。

我尝试了Uri.Builder().scheme("file").path(orgPath).build(),但结果是:file:path而不是file://path

如何以更快的方式构建与Uri相同的Uri.fromFile()

谢谢!

2 个答案:

答案 0 :(得分:2)

尝试Uri.encode()

"file://"+Uri.encode(path)

或者如果您想允许字符串像/或除了将其作为第二个参数传递

喜欢:

  "file://" + Uri.encode(path,"/")

答案 1 :(得分:2)

好的,我发现我只需要添加.auth()Uri.Builder().scheme("file").auth("").path(orgPath).build()工作正常。