gpt4 book ai didi

Android从mysql服务器获取包含特殊/复制粘贴字符的数据

转载 作者:行者123 更新时间:2023-11-29 00:41:09 25 4
gpt4 key购买 nike

我需要从 mysql 数据库中获取一些数据。我正在运行一个 php 脚本来查询数据库、json 编码并打印它。通过服务器中 php 上的 httppost 从我的应用程序获取结果。我从服务器获取所有数据,除了一些包含特殊/非类型字符的条目。例如:“,”对于这些条目,我得到的是空值。所以除了将这些字符替换为诸如“”服务器端之类的键入字符之外……有什么方法可以让我使用这些字符获取这些数据以显示在应用程序上。谢谢。

 try{
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost(KEY_121);
//httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
HttpResponse response = httpclient.execute(httppost);
HttpEntity entity = response.getEntity();
is = entity.getContent();

}catch(Exception e){
Log.e("cxxn", "Error in http connection "+e.toString());
}

//convert response to string
try{
BufferedReader reader = new BufferedReader(new InputStreamReader(is,"iso-8859-1"),8);
StringBuilder sb = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null) {
sb.append(line + "\n");
}
is.close();
result=sb.toString();
}catch(Exception e){
Log.e("convt", "Error converting result "+e.toString());
}

对于那些带有特殊字符的数据,结果具有空值。我应该更改我正在使用的编码吗?编辑:MySQL 字符集为:UTF-8 Unicode (utf8)

<?php

mysql_connect("","","");

mysql_select_db("fdict");

$q=mysql_query("SELECT (Id), (WD), (des), (udte) FROM `dict`");

while($e=mysql_fetch_assoc($q))

$output[]=$e;

print(json_encode($output));

mysql_close();
?>

这是我的服务器端 php 代码。已删除服务器地址,通过。具有特殊字符的数据似乎仅在 json_encode() 之后变为空值。sql 查询结果的回显显示正确的数据,没有任何空值。有人请帮忙解决这个问题。我能做什么..?我有什么选择..?

谢谢。

最佳答案

使用 this 解决了它. 需要在 SELECT 查询之前放置 mysql_query('SET CHARACTER SET utf8')。以便它以 utf8 格式检索。

关于Android从mysql服务器获取包含特殊/复制粘贴字符的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12211652/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com