java.net.URISyntaxException

2025-10-10 05:40:15

1、关于这个错误,是说地址中涉及了特殊字符,如‘|’‘&’等。所以不能直接用String代替URI来访问。必须采用%0xXX方式来替代特殊字符。解决的话只能先把String转成URL,再能过URL生成URI的方法来解决问题。

2、代码:

方法1:

URL url = new URL(urlstr);

URI uri = new URI(url.getProtocol(), url.getHost() + ":" + url.getPort(),url.getPath(), url.getQuery(), null);

3、方法2:

在URL中下列字符具有特殊含义:符号 含义     如何转义+     URL中+号表示空格                           %2B     空格 URL中的空格可以用+号或者编码 %20   /   分隔目录和子目录                                 %2F       ?     分隔实际的URL和参数                     %3F       %     指定特殊字符                                    %25       #     表示书签                                             %23       &     URL中指定的参数间的分隔符        %26       =     URL中指定参数的值                        %3D 

.

.

.

代码:

urlstr = urlstr.replace("&", "%26");

...

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢