我目前正在开发一个Android应用程序,它有一个基于web的管理系统附加到内容。我想要做的是在Android应用程序中显示内容,该应用程序通过JSON从web检索信息。应用程序需要支持中文和英文。稍后,我想提供德语、法语、荷兰语和西班牙语。
我的问题来自中文。我有一个PHP和MySQL管理系统,这是完美的工作在英语。一旦我在系统中添加了中文字符,PHPMyAdmin就不会按我输入的方式显示这些字符。编码错误。从那时起,在Android中通过JSON检索所有内容也不会显示正确的字符。
这里有谁能给我指个方向吗?除了中文,其他的都能用。我没有中文编码的经验,也没有在网上搜索的经验。我在数据库中找到了一些我尝试过的MySQL,GB编码的中文项目,但这似乎不起作用。
发布于 2012-10-11 17:41:31
我将PHP页面更改为UTF,并将数据库记录设置为uft8_unicode_ci。当我查看PHPMyAdmin时,记录像以前一样显示奇怪的字符,一切在PHP后端看起来都很完美。当我查看JSON文件时,我也看到了奇怪的字符,但显示的字符与PHPMyAdmin不同。JSON (PHP)另存为UTF-8。
function loadInfo($id){
if(is_numeric($id)){
$locatieArray = array();
$q = 'SELECT * FROM locaties WHERE id='.$id.'';
$r = mysql_query($q);
if($l = mysql_fetch_array($r)){
$loc = array(
'id' => utf8_encode($l['id']),
'nameEN' => utf8_encode($l['nameEN']),
'nameCH' => utf8_encode($l['nameCH']),
'descEN' => utf8_encode($l['descEN']),
'descCH' => utf8_encode($l['descCH']),
'addEN' => utf8_encode($l['addEN']),
'addCH' => utf8_encode($l['addCH']),
'img' => utf8_encode($l['img']),
'rate' => utf8_encode($l['rate']),
'tel' => utf8_encode($l['tel']),
'url' => utf8_encode($l['url'])
);
}
$locatieArray[] = $loc;
}
// format array for json.
$returnArray['locatie'] = $locatieArray;
$json = json_encode($returnArray);
return $json;
}我生成JSON的方式有问题吗?或者我应该首先专注于让PHPMyAdmin中的中文字符工作?
https://stackoverflow.com/questions/12822041
复制相似问题