swift utf-8 gb2312

swift - Cómo cambiar la codificación GB-2312 a UTF-8



gb2312 (1)

Utilizo nsurlsession y recibí nsdata con codificación GB-2312. ¿Cómo puedo cambiar la codificación de GB-2312 a UTF-8?

Probé este código

let enc = CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000) var result = NSString(data: data, encoding:enc)!

pero tiene un error

Uso del identificador no resuelto ''kCFStringEncodingGB_18030_2000''


Resolví este problema con el uso del valor concreto de gb312 constante en lugar de la manzana definida constante

let enc = CFStringConvertEncodingToNSStringEncoding(0x0632); let dogString:String = NSString(data: data, encoding: enc)! println(dogString)

esta es la mejor solución, y gracias por la sugerencia de Daij-Djan

let cfEnc = CFStringEncodings.GB_18030_2000 let enc = CFStringConvertEncodingToNSStringEncoding(CFStringEncoding(cfEnc.rawValue)) let dogString:String = NSString(data: data, encoding: enc)!