java.net.URLEncoder.encode空格变+号,加号的解决办法
今天发现Double d = (Double) 66.6 * 100sout(d) = 6659按照下面的方法修改后就ok了:String str = 66.6;BigDecimal b = new BigDecimal(str);BigDecimal c = new BigDecimal(String.valueOf(100));Integer price = b.multiply(c).int
·
今天发现把字符串在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
更多推荐
已为社区贡献5条内容
所有评论(0)