凌云志轩 2016-05-16 11:01 采纳率: 0%
浏览 1800
已采纳

swift 转码关于gbk编码问题

Swift 我想把uint8数组转成字符串,是gbk编码的。请教下我应该怎么转

  • 写回答

1条回答 默认 最新

  • oyljerry 2016-05-16 11:15
    关注
     func UTF8ToGB2312(str: String) -> (NSData?, UInt) {
        let enc = CFStringConvertEncodingToNSStringEncoding(UInt32(CFStringEncodings.GB_18030_2000.rawValue))
    
        var data = str.dataUsingEncoding(enc, allowLossyConversion: false)
    
        return (data, enc)
    }
    
    class ViewController: UIViewController {
    
        override func viewDidLoad() {
            super.viewDidLoad()
            // Do any additional setup after loading the view, typically from a nib.
    
            let (data, enc) = UTF8ToGB2312("abcd1234")
            let gbkStr = NSString(data: data!, encoding: enc)!
    
            print("GBK string is: \(gbkStr)")
        }
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?