阅读(4332) (7)

鸿蒙OS Uri.Builder

2022-04-12 14:10:10 更新

Uri.Builder

java.lang.Object

|---ohos.utils.net.Uri.Builder

& public static final class Uri.Builder
& extends Object

快速构造统一资源标识符 (URI) 对象。

标准 URI 格式如下:

[scheme:]scheme-specific-part[#fragment]

不需要解析不透明的 URI。它也可以是相对 URI。 分层 URI 的标准格式如下:

<div style='display: none'>[scheme:][//authority][path][?query][#fragment]</div>

如果 URI 是服务器类型,则其权限字段可以按以下格式解析:

[user-info@]host[:port]

构造函数摘要

构造函数 描述
Builder()

方法总结

修饰符和类型 方法 描述
Uri.Builder appendDecodedPath(String path) 将解码后的路径附加到当前分层 URI 中的现有路径。
Uri.Builder appendDecodedQueryParam(String key, String value) 将解码后的查询附加到当前分层 URI。
Uri.Builder appendEncodedPath(String path) 将编码路径附加到当前分层 URI 中的现有路径。
Uri build() 基于当前的 Builder 对象创建一个 Uri 实例。
Uri.Builder clearQuery() 清除当前分层 URI 的查询字段。
Uri.Builder decodedAuthority(String authority) 设置当前分层 URI 中权限字段的所有字符进行编码,包括 at 符号 (@) 和冒号 (:)。
Uri.Builder decodedFragment(String fragment) 设置要编码的当前 URI 中的片段字段的所有字符。
Uri.Builder decodedOpaqueSsp(String opaqueSsp) 将当前不透明 URI 中的方案特定部分字段设置为被编码但不被解析。
Uri.Builder decodedPath(String path) 设置要编码的当前分层 URI 中路径字段的斜线 (/) 以外的字符。
Uri.Builder decodedQuery(String query) 设置当前分层 URI 中查询字段的所有字符进行编码,包括问号 (?) 和等号 (=)。
Uri.Builder encodedAuthority(String authority) 设置当前分层 URI 的权限字段。
Uri.Builder encodedFragment(String fragment) 设置当前 URI 的片段字段。
Uri.Builder encodedOpaqueSsp(String opaqueSsp) 将当前不透明 URI 中的方案特定部分字段设置为不被解析。
Uri.Builder encodedPath(String path) 设置当前分层 URI 的路径字段。
Uri.Builder encodedQuery(String query) 设置当前分层 URI 的查询字段。
Uri.Builder scheme(String scheme) 设置当前 URI 的方案字段。
String toString() 获取通过 Builder 创建的 Uri 的字符串表示形式。
从类 java.lang.Object 继承的方法
cloneequalsfinalizegetClasshashCodenotifynotifyAllwaitwaitwait

构造函数详细信息

Builder

public Builder()

Method Detail

scheme

public Uri.Builder scheme(String scheme)

设置当前 URI 的方案字段。

参数:

参数名称 参数描述
scheme 指示要设置的方案字段。

返回:

返回 Builder 对象。

decodedOpaqueSsp

public Uri.Builder decodedOpaqueSsp(String opaqueSsp)

将当前不透明 URI 中的方案特定部分字段设置为被编码但不被解析。

参数:

参数名称 参数描述
opaqueSsp 指示要为不透明 URI 设置的解码方案特定部分字段。

返回:

返回 Builder 对象。

encodedOpaqueSsp

public Uri.Builder encodedOpaqueSsp(String opaqueSsp)

将当前不透明 URI 中的方案特定部分字段设置为不被解析。

参数:

参数名称 参数描述
opaqueSsp 指示要为不透明 URI 设置的编码方案特定部分字段。

返回:

返回 Builder 对象。

decodedAuthority

public Uri.Builder decodedAuthority(String authority)

设置当前分层 URI 中权限字段的所有字符进行编码,包括 at 符号 (@) 和冒号 (:)。

参数:

参数名称 参数描述
authority 指示要为分层 URI 设置的解码权限字段。

返回:

返回 Builder 对象。

encodedAuthority

public Uri.Builder encodedAuthority(String authority)

设置当前分层 URI 的权限字段。

参数:

参数名称 参数描述
authority 指示要为分层 URI 设置的编码权限字段。

返回:

返回 Builder 对象。

decodedPath

public Uri.Builder decodedPath(String path)

设置要编码的当前分层 URI 中路径字段的斜线 (/) 以外的字符。

参数:

参数名称 参数描述
path 指示要为分层 URI 设置的解码路径字段。

返回:

返回 Builder 对象。

encodedPath

public Uri.Builder encodedPath(String path)

设置当前分层 URI 的路径字段。

参数:

参数名称 参数描述
path 指示要为分层 URI 设置的编码路径字段。

返回:

返回 Builder 对象。

appendDecodedPath

public Uri.Builder appendDecodedPath(String path)

将解码后的路径附加到当前分层 URI 中的现有路径。

如果 URI 中的 path 字段没有设置,这个添加的路径将被作为绝对路径处理。

参数:

参数名称 参数描述
path 指示要附加到分层 URI 的解码路径。 路径不得以斜杠 (/) 开头。

返回:

返回 Builder 对象。

appendEncodedPath

public Uri.Builder appendEncodedPath(String path)

将编码路径附加到当前分层 URI 中的现有路径。

如果 URI 中的 path 字段没有设置,这个添加的路径将被作为绝对路径处理。

参数:

参数名称 参数描述
path 指示要附加到分层 URI 的编码路径。 路径不得以斜杠 (/) 开头。

返回:

返回 Builder 对象。

decodedQuery

public Uri.Builder decodedQuery(String query)

设置当前分层 URI 中查询字段的所有字符进行编码,包括问号 (?) 和等号 (=)。

参数:

参数名称 参数描述
query 指示要为分层 URI 设置的解码查询字段。

返回:

返回 Builder 对象。

encodedQuery

public Uri.Builder encodedQuery(String query)

设置当前分层 URI 的查询字段。

参数:

参数名称 参数描述
query 指示要为分层 URI 设置的编码查询字段。

返回:

返回 Builder 对象。

appendDecodedQueryParam

public Uri.Builder appendDecodedQueryParam(String key, String value)

将解码后的查询附加到当前分层 URI。

参数:

参数名称 参数描述
key 指示解码查询的键。
value 指示解码查询的值。

返回:

返回 Builder 对象。

clearQuery

public Uri.Builder clearQuery()

清除当前分层 URI 的查询字段。

返回:

返回 Builder 对象。

decodedFragment

public Uri.Builder decodedFragment(String fragment)

设置要编码的当前 URI 中的片段字段的所有字符。

参数:

参数名称 参数描述
fragment 指示要为 URI 设置的解码片段字段。

返回:

返回 Builder 对象。

encodedFragment

public Uri.Builder encodedFragment(String fragment)

设置当前 URI 的片段字段。

参数:

参数名称 参数描述
fragment 指示要为 URI 设置的编码片段字段。

返回:

返回 Builder 对象。

build

public Uri build()

基于当前的 Builder 对象创建一个 Uri 实例。

返回:

如果设置了 opaqueSsp 参数,则返回一个不透明的 URI; 否则返回分层 URI。

Throws:

Throw名称 Throw描述
UnsupportedOperationException 如果 opaqueSsp 不为 null 但 scheme 为 null,则引发此异常。

toString

public String toString()

获取通过 Builder 创建的 Uri 的字符串表示形式。

重写:

Object 类中的 toString

返回:

返回通过 Builder 创建的 Uri 的字符串表示形式。