首先从一个问题说起:
插入一个中文到blob类型(mysql编码是utf-unicode-ci).
insert into blobtype(data) values(‘中文你好‘)
赋值数据显示为:
涓枃浣犲ソ *
这是为什么?
blob存进去的出来为什么不是中文你好,因为编码的问题,我们复制后直接显示是asci编码。转成utf8编码就可以看到“中文你好”了。
unicode和utf8不是一个东西。
中文你好 这4个字
中文转unicdoe是\u4e2d\u6587\u4f60\u597d。
中文转utf8
http://tool.chinaz.com/Tools/UTF-8.aspx
echo json_encode("中文"); //"\u4e2d\u6587"
在PHP5.4, 这个问题终于得以解决, Json新增了一个选项: JSON_UNESCAPED_UNICODE, 故名思议, 就是说, Json不要编码Unicode.
一、先来看一些有趣的字符编码转换
代码 | 以GBK格式保存 | 以UTF-8格式保存 |
String str = "cn中国"; | ||
java.net.URLEncoder.encode(str, "iso-8859-1") | cn%3F%3F | cn%3F%3F |
java.net.URLEncoder.encode(str, "gbk") | cn%D6%D0%B9%FA | cn%D6%D0%B9%FA |
java.net.URLEncoder.encode(str, "utf-8") | cn%E4%B8%AD%E5%9B%BD | cn%E4%B8%AD%E5%9B%BD |
new String(str.getBytes(),"iso-8859-1") | cn???ú | cn?????? |
new String(str.getBytes(),"gbk") | cn中国 | cn涓浗 |
new String(str.getBytes(),"utf-8") | cn?й? | cn中国 |
http://www.cnblogs.com/cy163/archive/2007/05/31/766886.html
原文:http://www.cnblogs.com/youxin/p/4093669.html