1

クエリURLを送信しようとしています

String url = String.format(
   "http://xxxxx/xxx/xxx&message=%s",myEditBox.getText.toString());
// Create a new HttpClient and Post Header
DefaultHttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost(url);
httpclient.getCookieStore().addCookie(cooki);
try {
   ResponseHandler<String> responseHandler = new BasicResponseHandler();
   httpclient.getParams().setParameter("http.connection-manager.timeout", 15000);
   String response = httpclient.execute(httppost, responseHandler);

エラーが発生しますillegal character at query。それはwhite spaceおそらくです。この問題に対処する方法は?

よろしくお願いします

4

3 に答える 3

5

URL をエンコードする必要があります。

String query = URLEncoder.encode(myEditBox.getText.toString(), "utf-8");
String url = "http://stackoverflow.com/search?q=" + query;
于 2012-11-01T08:21:55.090 に答える
0

試してみませんか

 httpclient.setRequestProperty("Accept-Charset","UTF-8");
 url="http://xxxxx/xxx/xxx&message="+URLEncoder.encode(myEditBox.getText.toString(), "UTF-8");
于 2012-11-01T08:22:17.603 に答える
0

edittext から値を取得しながら .trim() を試してください。空白は edittext に由来する可能性があり、「utf-8」も使用します。

以下のコードを参照してください。

String value = URLEncoder.encode(myEditBox.getText.toString().trim(), "utf-8");
String url = "http://xxxxx/xxx/xxx&message=%s" + value;
于 2012-11-01T08:31:41.977 に答える