0

Android アプリケーションから接続しようとすると、exceptionことわざが表示されます。Java URI Syntax Exception "java.io.IOException: java.net.URISyntaxException: Invalid % sequence: %wl in query at index 88:"

exceptionURLのどこを投げているよう"%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 で使用する場合は%、最初にエンコードする必要があります。

そのため、最初に、接続する前に文字列を%withに置き換える必要があります。%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");

ここでは、1 つの特殊文字を置き換えるのは問題ありませんが、適切な URL エンコーディングを必要とする特殊文字が多数ある場合、このようにするのは面倒な作業になります。

于 2013-01-08T11:58:38.770 に答える