解决ZBarSDK 中文出现乱码

时间:2023-10-18 14:54:44

使用ZBarSDK进行二维码解释时出现乱码是因为ZBarSDK在解释时使用的字符集不对,需在ZBarSDK的源码中更正。

1、可以到http://sourceforge.net/p/zbar/_list/hg下载源码

解决ZBarSDK 中文出现乱码

我用浏览器下载提示网络异常,后来使用迅雷下载。

2、在源码包的iphone目录,找到xcode工程文件打开

解决ZBarSDK 中文出现乱码

3、打开src/zbar/qrcode/qrdectxt.c做如下修改

latin1_cd=iconv_open("UTF-8","ISO8859-1");//网上有介绍改这个的,我没成功

sjis_cd=iconv_open("UTF-8","GB2312");//只改了这条

utf8_cd=iconv_open("UTF-8","UTF-8");

4、编译生成lizbar.a

这个工程有多个target打开工程默认的是EmbedReader,要改成lizbar

解决ZBarSDK 中文出现乱码

打开libzbar的Edit Scheme.将build Configuration改为Release。然后编译

解决ZBarSDK 中文出现乱码

5、编译后Products下的libzbar.a变成了黑色。右键使用Show in Finder打开,可以找到libzbar.a。将其拷到你的工程中。