use*_*434 4 android json utf-8
我的应用程序的一部分在mysql数据库上执行查询(通过php)。我在数据库UTF-8中使用,因为我需要显示类似éàê的字母。我通读了这个问题,因为这似乎几乎是相同的。
Android Java UTF-8 HttpClient问题
但是,当我实现代码时,他将每个返回值都替换为é作为null。
这是我的代码
HttpParams params = new BasicHttpParams();
HttpProtocolParams.setVersion(params, HttpVersion.HTTP_1_1);
HttpProtocolParams.setContentCharset(params, "UTF-8");
params.setBooleanParameter("http.protocol.expect-continue", false);
HttpClient httpclient = new DefaultHttpClient(params);
HttpPost httppost = new HttpPost("http://www.example.com/example.php");
httppost.setEntity(new UrlEncodedFormEntity(query));
HttpResponse response = httpclient.execute(httppost);
HttpEntity entity = response.getEntity();
String jsonText = EntityUtils.toString(entity, HTTP.UTF_8);
Toast.makeText(StoresInfo.this, jsonText, Toast.LENGTH_LONG).show();
is = entity.getContent();
Run Code Online (Sandbox Code Playgroud)
因此,在jsonText字符串中,他用null将返回值替换为其中的“è”。
最后一行是= entity.getConent(); 我之所以添加它,是因为我通常使用输入流来读取它,但是这样做并不好。
有人有主意吗?
这是我的PHP代码
<?php
mysql_select_db("database");
$q=mysql_query($_REQUEST['query']);
while($e=mysql_fetch_assoc($q))
$output[]=$e;
print(json_encode($output));
mysql_close();
?>
Run Code Online (Sandbox Code Playgroud)
在另一页上尝试代码后,我认为您的问题来自服务器的Web界面。
例如,您可以在包含“é”字符的Google页面上尝试GET请求:
HttpParams params = new BasicHttpParams();
HttpProtocolParams.setVersion(params, HttpVersion.HTTP_1_1);
HttpProtocolParams.setContentCharset(params, "UTF-8");
params.setBooleanParameter("http.protocol.expect-continue", false);
HttpClient httpclient = new DefaultHttpClient(params);
HttpGet httpget = new HttpGet("http://www.google.ch/search?sourceid=chrome&ie=UTF-8&q=www.google.frb%C3%A9b%C3%A9&qscrl=1#sclient=psy&hl=fr&qscrl=1&source=hp&q=b%C3%A9b%C3%A9&aq=&aqi=&aql=f&oq=&pbx=1&fp=b4d89b2783e136eb&pf=p&pdl=300");
try
{
HttpResponse response = httpclient.execute(httpget);
HttpEntity entity = response.getEntity();
String jsonText = EntityUtils.toString(entity, HTTP.UTF_8);
Log.d("TEST", jsonText);
Toast.makeText(this, jsonText, Toast.LENGTH_LONG).show();
}
catch (Exception e)
{
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9779 次 |
| 最近记录: |