 字符串编码转换(GBK)

字符编码经常能听到的有Unicode、UTF-8、GBK、GB2312、GB18030、BIG5等,大体分两类:全球统一编码和各过个语种的独立编码

Unicode是典型的全球统一编码。不管在那个国家,同一个字的unicode字符都是一样的。常用的unicode字符为2个字节,也有4个字节编码。

UTF8是unicode的一种编码方式。对应2字节的unicode,utf8为1字节(英文)或3字节(中文)。实际情况比这复杂,这里只说明常用情况。

GBK、GB2312、GB18030都是简体中文的编码。GB2312是GBK的子集,GBK是GB18030的子集。

BIG5是台湾使用的繁体中文编码。

如果网页编码是UTF-8的,可以简单的这么转换为字符串:

NSString *pageStirng = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];

如果网页是gbk或者gb2312,用UTF-8转换的话,pageSource返回nil,这时需要使用gbk编码做转换.

NSStringEncoding *gbkEncoding = CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000);
NSString *pageStirng = [[NSString alloc] initWithData:data encoding:gbkEncoding];

你可能感兴趣的:( 字符串编码转换(GBK))