IOS 解决zbar扫描二维码时出现中文乱码问题实例

 作者:朱克锋

邮箱:[email protected]

转载请注明出处:http://blog.csdn.net/linux_zkf

在使用zbar扫描二维码时有时候会出现中文乱码问题如下面的这个二维码,正常扫描应该是我的名字:朱克锋但是用zbar扫描的结果却是乱码,原因是zbar默认的字符不是utf-8类型

IOS 解决zbar扫描二维码时出现中文乱码问题实例_第1张图片

解决方法就是转码

关键代码:

  id<NSFastEnumeration> results =

    [info objectForKey: ZBarReaderControllerResults];

    ZBarSymbol *symbol = nil;

    for(symbol in results) {

        // EXAMPLE: just grab the first barcode

        break;

    }

    //symbol.data;

    //处理部分中文乱码问题

    if ([symbol.data canBeConvertedToEncoding:NSShiftJISStringEncoding])

    {

        symbol.data = [NSString stringWithCString:[symbol.data cStringUsingEncoding: NSShiftJISStringEncoding] encoding:NSUTF8StringEncoding];

    }

你可能感兴趣的:(ios,encoding)