阅读(1223) (9)

鸿蒙OS URLEncoder

2022-06-06 16:33:12 更新

URLEncoder

java.lang.Object

|---java.net.URLEncoder

public class URLEncoder
extends Object

HTML 表单编码的实用程序类。 此类包含用于将 String 转换为 application/x-www-form-urlencoded MIME 格式的静态方法。 有关 HTML 表单编码的更多信息,请参阅 HTML 规范。

对字符串进行编码时,适用以下规则:

  • 字母数字字符“a”到“z”、“A”到“Z”和“0”到“9”保持不变。
  • 特殊字符“.”、“-”、“*”和“_”保持不变。
  • 空格字符“”转换为加号“+”。
  • 所有其他字符都是不安全的,首先使用某种编码方案将其转换为一个或多个字节。 然后每个字节由 3 个字符的字符串“%xy”表示,其中 xy 是字节的两位十六进制表示。 推荐使用的编码方案是 UTF-8。 但是,出于兼容性原因,如果未指定编码,则使用平台的默认编码。

例如,使用 UTF-8 作为编码方案,字符串 "The string ü@foo-bar" 将被转换为 "The+string+%C3%BC%40foo-bar",因为在 UTF-8 中,字符 ü 被编码为两个 字节 C3(十六进制)和 BC(十六进制),字符 @ 被编码为一个字节 40(十六进制)。

方法总结

修饰符和类型 方法 描述
static String encode(String s) 已弃用。 结果字符串可能因平台的默认编码而异。 相反,使用 encode(String,String) 方法来指定编码。
static String encode(String s, String enc) 使用特定的编码方案将字符串转换为 application/x-www-form-urlencoded 格式。
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

方法详情

encode

@Deprecated public static String encode(String s)

已弃用。 结果字符串可能因平台的默认编码而异。 相反,使用 encode(String,String) 方法来指定编码。

将字符串转换为 x-www-form-urlencoded 格式。 此方法使用平台的默认编码作为编码方案来获取不安全字符的字节。

参数:

参数名称 参数描述
s 要翻译的字符串。

返回:

翻译后的字符串。

encode

public static String encode(String s, String enc) throws UnsupportedEncodingException

使用特定的编码方案将字符串转换为 application/x-www-form-urlencoded 格式。 此方法使用提供的编码方案来获取不安全字符的字节。

注意:万维网联盟建议规定应使用 UTF-8。 不这样做可能会引入不兼容性。

参数:

参数名称 参数描述
s 要翻译的字符串。
enc 支持的字符编码的名称。

返回:

翻译后的字符串。

Throws:

Throw名称 Throw描述
UnsupportedEncodingException 如果不支持命名编码