【走过的弯路】UTF-8编码转GB2312

来源:互联网 发布:装完ubuntu进不去win10 编辑:程序博客网 时间:2024/05/21 08:01

1.说明:UTF-8和GB2312没有直接的转换关系,需要通过查表的方式来装换,表码如下链接:

http://wenku.baidu.com/link?url=U99KgZDiS3k33Pl7f9UFQo5puGScd462DzzpCOTgl-Hu1I9liubC7gUooKp6FLas4Wn6OTUYWmHATKxzOmFvZaSAh9LtsBdQrS3MlzPulwu


2.误区:先把UFT-8转成unicode,再通过Unicode转换成GB2312,如链接:http://www.cnblogs.com/pengyingh/articles/2451429.html,可以看到UFT-8转成unicode后,再通过wcstombs函数转成GB2312,wcstombs是一个宽字符转换成多字符函数,猜测里面包含了很多表,在网页等编程中是用WideCharToMultiByte() 函数等;

CC2541的#include <stdlib.h>中找不到这个wcstombs函数,所以只能自己做表,在做表的过程中,发现CC2541根本放不小这么大的表;


3.解决措施:

本来设计是将IOS推送过来的消息UTF-8(3字节)转成GB2312(2字节)flash字库显示,现在UFT-8无法转成GB2312,所以果断把字库做成UTF-8字库了;

0 0
原创粉丝点击