我想向url发出请求,但遇到了意外的问题
我有一些String url
和text - "book shop"
然后我把它们组合在一起:
url = url+text;
url.replaceAll(" ", "%20");
然而,空间没有被替换,我得到错误
11-20 20:26:30.961: E/AndroidRuntime(13947): Caused by: java.lang.IllegalArgumentException: Illegal character in query.
是我犯了错误,还是有其他特殊的符号,看起来像日志中的空格?
使用URLEncoder 正确编码您的URL
url = url+text;
url = URLEncoder.encode(url, "UTF-8");
根据你正在使用的url的结构,你可能只想做
url = url + URLEncoder.encode(text, "UTF-8");
如果我理解正确,这可能有助于
public class testclass {
static String url = "www.example.com/";
static String text = "bookashop";
public static void main(String[] args) {
String urlnew = text.replaceAll("a", "%20");
String urla = (url+urlnew);
System.out.println(urla);
}