IOS編碼介紹(基礎(chǔ)向)

介紹一下IOS開(kāi)發(fā)經(jīng)常接觸的兩種編碼類型——UTF-8,GB_18030_2000

UTF-8簡(jiǎn)介

UTF-8國(guó)際通用的編碼標(biāo)準(zhǔn),通用性強(qiáng),支持大部分漢字,但對(duì)于漢字的編碼采用3字節(jié)的方式,編碼方式不如GB_18030_2000簡(jiǎn)潔。對(duì)于向服務(wù)器請(qǐng)求信息的編碼格式,為了保證其通用性一般使用UTF-8.

GB_18030_2000簡(jiǎn)介

GB_18030_2000是GBK的取代版本,它的主要特點(diǎn)是在GBK基礎(chǔ)上增加了CJK統(tǒng)一漢字?jǐn)U充A的漢字(GB_18030_2000和GBK都是漢字編碼的重要標(biāo)準(zhǔn)),通用性較強(qiáng),支持的漢字多于UTF-8,但對(duì)于英文采用2字節(jié)編碼,比較占用空間。由于是國(guó)標(biāo)編碼標(biāo)準(zhǔn),國(guó)外的一些網(wǎng)站基本上不支持。對(duì)于服務(wù)器返回信息(一般為UTF-8編碼),為了保證其漢字顯示的完整性,盡量轉(zhuǎn)為GB_18030_2000再顯示出來(lái)。

服務(wù)器返回結(jié)果的互相轉(zhuǎn)換(GB_18030_2000)

獲取到GB_18030_2000在Encoding中的枚舉值,

NSStringEncoding enc = CFStringConvertEncodingToNSStringEncoding
(kCFStringEncodingGB_18030_2000);
NSString *responseString=[[NSString alloc] initWithData:yourData 
encoding:enc];


服務(wù)器返回結(jié)果的互相轉(zhuǎn)換(UTF-8)

NSString *utf8Str = [[NSString alloc] initWithData:response 
encoding:NSUTF8StringEncoding];

NSData *oData=[utf8Str dataUsingEncoding:NSUTF8StringEncoding];
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 編碼問(wèn)題一直困擾著開(kāi)發(fā)人員,尤其在 Java 中更加明顯,因?yàn)?Java 是跨平臺(tái)語(yǔ)言,不同平臺(tái)之間編碼之間的切換...
    x360閱讀 2,581評(píng)論 1 20
  • 基本概念 字符(Character) 是各種文字和符號(hào)的總稱,包括各國(guó)家文字、標(biāo)點(diǎn)符號(hào)、圖形符號(hào)、數(shù)字等。 字符集...
    chiguozi閱讀 2,553評(píng)論 0 2
  • 在說(shuō)常見(jiàn)的字符編碼(ASCII、gb2312、gbk、utf-8等)之前,我們先來(lái)看看編碼的歷史吧。 編碼編年史 ...
    craneyuan閱讀 1,001評(píng)論 4 4
  • 你現(xiàn)在的生活也許不是你想要的, 但絕對(duì)是你自找的。 世界上100%的抱怨都可以用這句話來(lái)回答。 這個(gè)世界上所有的不...
    筱小麗閱讀 200評(píng)論 0 0
  • 1994年12月8日作于長(zhǎng)沙黃土嶺武警長(zhǎng)沙指揮學(xué)校。 今年春節(jié)不回家, 治病守校留長(zhǎng)沙。 有閑不妨來(lái)一坐, 對(duì)...
    雕蟲(chóng)小吏閱讀 206評(píng)論 0 4

友情鏈接更多精彩內(nèi)容