我试图从数据库中读取并在Android中的TextView中显示结果,它一直有效,直到句子中有一个瑞典字母,否则TextView显示为null。 在数据库中一切都很好,即使瑞典字母在那里工作也很完美,但问题在于Android。
我在Android中使用UTF-8,在数据库列中使用utf8-general-ci。
修改 这个PHP函数解决了我的问题
/* Change data-type from string to integar or float if required.
* If string detected then utf8_encode() it. */
function cast_data_types ($value) {
if (is_array($value)) {
$value = array_map('cast_data_types',$value);
return $value;
}
if (is_numeric($value)) {
if(strpos('.', $value)===false) return (float)$value;
return (int) $value;
}
return utf8_encode((string)$value);
}
json_encode(cast_data_types($ data));
答案 0 :(得分:-1)
我认为您需要将数据库中的值作为byte[]
读取,然后在显示之前使用String
将其编码为new String(bytes,"ISO-8859-1")
。