技术的乐趣在于分享,欢迎多多交流,多多沟通。
全部博文(877)
分类: 嵌入式
2014-09-02 10:08:29
在坛子里看到有人问如何从GBK转UNICODE 虽然回帖了,为了更多人看到,单放一贴, 这是大学时玩PSP时,为了用freetype在psp上显示中文而做的转换函数和码表 码表是先用程序遍历生成全部GBK编码范围内的汉字,然后用windows api转换成unicode生成而来,因该不会有啥问题, 至少之前在PSP上用的没什么问题.... 查表函数如下 unsigned short zz_gbk2uni(unsigned char ch, unsigned char cl) { ch -= 0x81; ourdev_648518NHCOKH.zip cl -= 0x40; return (ch<=0x7d && cl<=0xbe) ? mb_gb2uni_table[ch*0xbf+cl] : 0x1fff; } GBK码的范围是,高8位:0x81~0xfe,低8位:0x40~0xfe,于是有了上面的函数 具体码表见附件,是我自己做的软件生成的 GBK转UNICODE函数和码表ourdev_648518NHCOKH.zip(文件大小:61K) (原文件名:GBK转UNICODE.zip) |