這些編碼,早些時候在一些應(yīng)用軟件中經(jīng)??吹?,估計很多朋友也看到了,這些編碼了!

從這個圖,我們可以看到這類編碼應(yīng)用很廣泛,那么我們一起看看,iso-8859-1字符集,到底是什么樣字符集,有那些字符!為什么,它應(yīng)用可以這么廣泛!
計算機上面流行第一個字符集,是ascii碼,是0-127 一個128字符。每個字符在里面有個對應(yīng)編號,分別是0-127。如果用二進(jìn)制表示,剛好是7位。這個字符集,在前期表示英文字符已經(jīng)足夠。后來,隨著計算機普及,越來越多國家(歐洲),開始應(yīng)用計算機,他們發(fā)現(xiàn)7位,共128字符。已經(jīng)不能描述他們常用的字符了。因此想到要兼容ascii字符集,就指定了擴展ASCII字符集。最多是0-255,256個字符。其中0-127 128字符及位置編碼 完全兼容ascii碼。只是擴展了128-255位置編入了新字符!

該字符集,完全兼容ascii字符集,并且是剛好可以用一個字節(jié)表示里面所有字符位置。又稱為擴展Ascii碼!這也是第一個iso-8859-1字符集。又叫:Latin-1 編碼(西歐編碼),后來陸續(xù)出了iso-8859-2…-15字符集。都是完全兼容ascii碼的。
說下幾個概念吧,什么是字符集,什么是字符編碼?
1、字符集,表示由一些指定的字符的所組成集合!ascii字符集,里面有128個字符
2、字符編碼,每個字符集中字符,都有一個固定的編號,也叫該字符在字符集中的的編碼!如:ascii字符集中,a 字符編碼是97。
相同字符,會出現(xiàn)在多個字符集中嗎,相同字符在不同字符集中編碼一樣嗎?
從上面例子,我們可以看到,ascii字符集、iso-8859-1字符集 有128個字符相同的。經(jīng)常相同的字符,可以出現(xiàn)在各個字符集中。但是,每個字符集對字符編號方式可能不同,因此,相同字符,在不同字符集中,編碼結(jié)果可能不一樣。當(dāng)然,也有一樣的!象ascii中所有字符編碼,在iso-8859-1字符集中,都一樣的。
弄清楚關(guān)于、字符集,字符編碼概念。我們還有幾個必須掌握的。就是,計算機是怎么樣儲存,顯示字符的呢?
一個文件有很多符號組成,各式各樣的!實際,計算機在存儲時候,只是寫入該字符所對應(yīng)的字符編碼值。將它存于磁盤或者在網(wǎng)絡(luò)中傳輸!如果要顯示時候,通過對應(yīng)字符集中,字符編碼值。然后可以轉(zhuǎn)換到計算機 通用的字符集的對應(yīng)字符編碼。計算機每個字符形狀,圖像長相,都在字體中。然后,通過轉(zhuǎn)換得到通用字符集的字符編碼,找到對應(yīng)的字符,及字體形狀,然后顯示出來!

字符在計算機存儲、傳輸都是該字符所在字符集中編碼值
好了,中間我們對字符概念做了很多的闡述、說明!下面,我們繼續(xù)本頁主題iso-8859-1字符集了。 它為什么能夠這么廣泛應(yīng)用呢?
我們知道,單字節(jié)最多可以表示256字符,實際上很多字符(目前unicode有幾十萬字符),都需要用多個字節(jié)來存儲!計算機在存儲傳輸都以字節(jié)為單位!因此單字節(jié)的: iso-8859-1 是存儲的最小單元。所以,無論你是多少個字節(jié)組成的字符,以單字節(jié)一個一個存儲、傳輸!都不會改變原來的值,都可以很好保存它的值!計算機亂碼,出現(xiàn)在顯示的時候,在不正確的字符集中,查找對應(yīng)字符編碼的字符!經(jīng)常是,編碼選擇字符集,跟做顯示選擇字符集不一致造成的!
在復(fù)制文件、傳輸文件不會造成字符編碼問題。而出現(xiàn)問題時候,是字符做顯示,或者將顯示字符存儲的時候,會出現(xiàn)問題!好了,這里面說的是iso-8859-1 其實,更多的是說說,字符編碼的一些常識!明白這些,對于iso-8859-1的一些特點理解,可能 更容易了!
可能以前有朋友就問,我mysql是存中文的,為什么我選擇字符集是Latin-1 ,是不是就出現(xiàn)亂碼了。其實不會,它只是將接到任何字節(jié),按照單字節(jié),逐個逐個存儲的。然后,讀取時候,也逐個逐個字節(jié)的讀出。沒有改變?nèi)魏伪4鎯?nèi)容,也沒有做任何編碼轉(zhuǎn)換!這是,最為安全的!好了,就到這里了,歡迎朋友們交流!