今天发现把字符串在encode之后空格变成了+号

String str1 = "4. 中国 aaa+ ";
String value1=java.net.URLEncoder.encode(str1,"UTF-8");
System.out.println(value1);
结果如下

4.+%E4%B8%AD%E5%9B%BD+aaa%2B+

最后把+全部替换为%20就可,考虑到会不会把字符串中的+号被替换" + ",发现字符串中的+会encode成为%2B

String str1 = "4. 中国 aaa+ ";
String value1=java.net.URLEncoder.encode(str1,"UTF-8");
        System.out.println(value1);
        value1 = value1.replaceAll("\\+", "%20");

输出:

4.%20%E4%B8%AD%E5%9B%BD%20aaa%2B%20

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐