为什么android在url的查询字符串元素中有空格时抛出错误

为什么android在url的查询字符串元素中有空格时抛出错误,android,url,Android,Url,我有下面的url,它在我的应用程序中使用 url = "http://ip/somefile.py?name=Adithya g&age=15&address=Trichy Tamilnadu" 当我打算使用android在httpget或httppost中解析上述字符串时。我犯了一个错误。假设url修改如下 url ="http://ip/somefile.py?name=Adithya%20g&age=15&address=Trichy%20Tamilna

我有下面的url,它在我的应用程序中使用

url = "http://ip/somefile.py?name=Adithya g&age=15&address=Trichy Tamilnadu"
当我打算使用android在httpget或httppost中解析上述字符串时。我犯了一个错误。假设url修改如下

url  ="http://ip/somefile.py?name=Adithya%20g&age=15&address=Trichy%20Tamilnadu"
url工作正常。错在哪里?无论这是特定服务器的错误还是android开发方面的错误。

事实上,您应该了解。有关更多信息,请参阅

或者像这样使用

   String url = Uri.parse("http://ip/somefile.py")
                    .buildUpon()
                    .appendQueryParameter("key", "val")
                    .build().toString();
其中key=参数名,val=参数值


或者这个

空格基本上会打断url,所以你需要对url进行编码。好了,伙计们。谢谢你的答复。。我使用了string.replaceAll(\\s“,“%20”)。因为我只有一个空白参数。我用过。@Ortoisewalker你应该用UrlEncode,反正你喜欢编码。嗯。。。在大家的帮助下,我真的很喜欢android。我不知道URLEncoder,在我的应用程序中,我天真地使用字符串querystring=“带有空格的字符串”,然后使用querystring=querystring.replace(“,“%20”);这似乎是一个更加完整和可信的方法+1d但与此相比,我的方法可能存在哪些缺点?您应该使用URLEncoder类,对您希望通过URL传递的参数进行编码。仅仅更换空间不是最好的主意,甚至不应该被建议。