0

当我尝试从我的 android 应用程序连接时,我得到一个exception说法。Java URI Syntax Exception "java.io.IOException: java.net.URISyntaxException: Invalid % sequence: %wl in query at index 88:"

它似乎exception在它所说的 URL 中抛出了 where"%wl"并且下面是 URL。有没有办法解决这个问题。

http://192.168.111.111:9000/RB/db.svc/upd?LinkId=184617ED1F21&IPs=fe80::1a46:17ff:feed:1f21%wlan0,192.168.1.127,&MNo=0771111111&sPin=000&Status=0
4

1 回答 1

4

如果你想%在你的 URL 中使用,首先你需要做的是对其进行编码。

所以首先你需要在连接之前%%25你的字符串....1f21%wlan0...替换它.....1f21%25wlan0....

您可以使用以下代码在 Java 中对 URL 进行编码

String encodedUrl = java.net.URLEncoder.encode(<your_url>,"UTF-8"); 

请查看以下链接以获取更多信息。

1.如何在java中编码url

2.URL编码字符参考

更新 :

如果你不想使用 URL 编码器,那么你可以试试这个:

yourURL.replaceAll("%", "%25");

在这里替换单个特殊字符很好,但如果您有许多需要正确 URL 编码的特殊字符,这样做将是一项乏味的任务。

于 2013-01-08T11:58:38.770 回答