我使用以下代码将数据发送到我的服务器:
public InputStream getStreamFromConnection(String url, List<NameValuePair> params) throws ClientProtocolException, IOException {
if(ConnectionDetector.isConnectedToInternet(this.context)) {
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(url);
httpPost.setEntity(new UrlEncodedFormEntity(params));
HttpResponse httpResponse = httpClient.execute(httpPost);
HttpEntity httpEntity = httpResponse.getEntity();
return httpEntity.getContent();
} else {
return null;
}
}
当我现在在我的参数中有一条看起来像这样的信息时:
The leadership earned 1000$ during the last years.
服务器收到:
The leadership earned 1000
所有消息都是在任何特殊字符的索引处精确切割的。 甚至更多。如果somone写了一条微笑的消息,如:
:)
这到达服务器
??
如何将特殊字符和smielies发送到服务器?
答案 0 :(得分:1)
听起来您只需要在使用它执行请求之前对URL进行编码。 尝试对您的网址进行编码,如下所示:
String encodedUrl = URLEncodedUtils.format(urlWithParameters, "utf-8");
答案 1 :(得分:0)
你有\\
这个特殊字符吗?
因为没有它,服务器就不会理解它。
(抱歉,由于声誉,我无法发表评论)