0

我正在使用 java 的 URLEncoder 获取用户提供的字符串并创建一个可安全用于文件名的字符串。我想知道两个不同的字符串有可能被编码为相同的值。

例如,如果一个字符串是“ABC%20D”,但由于 % 被用作替换特殊字符的字符,那么“ABC D”和“ABC%20D”之类的内容是否可能都以相同的编码值结束?或者编码器是否总是将 % 之类的字符替换为其他字符?

4

1 回答 1

2

似乎使用您的示例输入对转义字符进行编码:

String result = URLEncoder.encode("ABC%20D", "UTF-8");
System.out.println(result);  //prints ABC%2520D
于 2012-04-12T20:55:43.010 回答