在讀 AFN 源碼時(shí),遇到了字符編碼的問(wèn)題, 這里做一個(gè)記錄
字符編碼 ASCII碼 Unicode 漢字編碼 UTF-8
ASCII碼: 一個(gè)字節(jié)表示 只占用了 7 bit 一共可以表示 128 個(gè)字符
可以表示所有的英文字符
非ASCII編碼: 除英語(yǔ)之外的其他語(yǔ)言 無(wú)法用ASCII碼 表示 稱為 非 ASII碼
Unicode: 世界上所有的符號(hào)都可以使用 Unicode碼表示
Unicode 雖然囊括了世界上所有的符號(hào) 但是 如何才能在電腦上顯示呢
UTF-8 : 互聯(lián)網(wǎng)上最流傳的 Unicode 編碼方式, 可使用 UTF-8 在電腦上顯示 Unicode 字符
漢字編碼:
GB2312 : 國(guó)標(biāo)碼 簡(jiǎn)體字
Big5 : 大五碼 繁體字
GBK : GB2312的升級(jí)版 包含簡(jiǎn)體字和繁體字
-
url 編碼(percentcode 百分號(hào)編碼)
Url的編碼格式采用的是ASCII碼,而不是Unicode,這也就是說(shuō)你不能在Url中包含任何非ASCII字符,例如中文。否則如果客戶端瀏覽器和服務(wù)端瀏覽器支持的字符集不同的情況下,中文可能會(huì)造成問(wèn)題。
Url編碼的原則就是使用安全的字符(沒(méi)有特殊用途或者特殊意義的可打印字符)去表示那些不安全的字符。
RFC3986文檔規(guī)定,Url中只允許包含英文字母(a-zA-Z)、數(shù)字(0-9)、-_.~4個(gè)特殊字符以及所有保留字符。
Ruby character 標(biāo)注字符
比如 北京(bei jing) 用拼音來(lái)標(biāo)注漢字
Unicode U+FFFC
是一個(gè)可被替換字符,如可以用一個(gè)圖片來(lái)代替。
所以說(shuō),unicode中可以有非字符對(duì)象
https://en.wikipedia.org/wiki/Specials_(Unicode_block)#cite_note-2
http://blog.csdn.net/acorld/article/details/10063543
YYText
中列舉了幾乎所有的富文本屬性 demo 還有效果圖等,是學(xué)習(xí)coreText的神器啊