|
newbie
|
 |
« 於: 七月 14, 2005, 08:13:51 am » |
|
我在英文語系的xp下訪問綠光,放眼一片小方格。在自己建的utf-8下的smf同樣如此。 請問utf-8意義何在?
|
|
|
|
|
|
|
|
Andrew::
|
 |
« 回覆文章 #1 於: 七月 14, 2005, 08:24:19 am » |
|
小方格? utf-8編碼是可以讓你在網頁內顯示多種語言.
|
|
|
|
|
newbie
|
 |
« 回覆文章 #2 於: 七月 14, 2005, 12:50:22 pm » |
|
小方格就是亂字符咯。我用來測試的是100%英文xp沒有安裝過任何中文支持程式。 怎麽理解utf-8在這種情況下不能正常顯示中文?
|
|
|
|
|
|
monkey
訪客
|
 |
« 回覆文章 #3 於: 七月 14, 2005, 09:19:54 pm » |
|
utf-8 是 "編碼" ! 瀏覽器讀取網頁上的資料時 是取得 該文字的編碼..而不是 該文字的資料(ex. 文字的向量資料) 所以..如果系統內沒有該字型或是替代字型 就會顯示亂碼(或用其他方式顯示...如方格) xp內建有很多的字型..並且支援多國語言..,如果系統裡面有內建 細明體...正常的情況下就會正確顯示中文 如果英文版xp沒有內建中文字型檔...就算瀏覽器取的中文字的編碼 也沒辦法顯示中文字型.. 因為找不到相對應的字型檔應該是這樣吧!! ^^" 我的系統是windows 2000中文版,沒試過英文版的 ^^" 使用UTF-8的原因 由於要使文字檔案之中的文字與ASCII相容,故此 UTF-8 選擇了使用可變長度位元組來儲存 Unicode ,例如ASCII字母繼續使用1位元組儲存,重音文字、希臘字母或西里爾字母等使用2位元組來儲存,而常用的漢字就要使用3位元組。輔助平面字元則使用4位元組。
UTF-8的編碼模式 UTF-8不使用大尾序和小尾序的形式。每個使用UTF-8儲存的字元,除了第一個位元組外,其餘位元組的頭兩個位元都是以 "10" 開始,使文字處理器能夠較快地找出每個字元的開始位置。
* 0xxxxxxx (00-7f) * 110xxxxx 10xxxxxx (c0-df)(80-bf) * 1110xxxx 10xxxxxx 10xxxxxx (e0-ef)(80-bf)(80-bf) * 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx (f0-f7)(80-bf)(80-bf)(80-bf) * 111110xx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx (f8-fb)(80-bf)(80-bf)(80-bf)(80-bf) * 1111110x 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx (fc-fd)(80-bf)(80-bf)(80-bf)(80-bf)(80-bf) 在ISO 10646的字集裡,最多只使用4位元組編碼。5位元組及6位元組UTF-8已不會再使用。
在UTF-8文件的開首,很多時都放置一個U+FEFF字元 (UTF-8 以 EF,BB,BF 代表),以顯示這個文字檔案是以UTF-8編碼。
對 UTF-8 的批評 UTF-8 使用可變長度位元組儲存,使電腦程式設計變得複雜。 (故此,在電腦程式或操作系統內部,多採用UCS-2編碼。)
在舊式的中文、日文及韓文編碼之中,每字元都使用2位元組儲存,而UTF-8須使用3位元組。 (採用UTF-16編碼則可只使用2位元組儲存。)
泰語以往使用的ISO 8859-11,每字元只使用1位元組儲存,而UTF-8須使用3位元組。 參考資料: http://zh.wikipedia.org/wiki/UTF-8http://netlab.cse.yzu.edu.tw/~statue/freebsd/hanzi/UTF-8-Unicode.html
|
|
|
|
|
|
seethrou
訪客
|
 |
« 回覆文章 #4 於: 七月 14, 2005, 10:40:55 pm » |
|
請問utf-8意義何在?
如果單單從上面字面的解釋是很有意義的問題!  不過如果從您原文的整個問題的上文下理來看,似乎沒有什麼相關,意義也不大, 如果可以的話,以後有問題,建議改為: 1. 有問題的地方,是什麼,有什麼現象,要比較詳細,以便大家交流時可集中在問題焦點上,而不會浪費相方時間在別的無關細節上。 2. 思路上最好也不要有主觀的,因為這往往令到損失很多時間,或問題得不到解決。 不好意思,上面的只是宏觀的在純問題或技術研究上的建議,而並不是有意冒犯,不要見怪! 回到實際的,個人記憶所及,使用的和替客戶安裝的眾多客戶系統,似乎在這情況上,從來沒有出現什麼問題,系統包括中英文 Win 2K, XP, 在 IE5.5 -6, 無需什麼特別的安裝,只是預設。 ------------------- 英文 Win 2K, XP 有內帶字體 Sim XXX (Sim Sun, Sim Hei - 仿宋, 仿海報)
|
|
|
|
|
|
seethrou
訪客
|
 |
« 回覆文章 #5 於: 七月 15, 2005, 01:33:17 pm » |
|
補充一點
在 Win Xp ==> Control Panel | Regional and Language Options | Advanced | Regional for non-Unicode program
Language for non-Unicode Program 可以設定為 => Chinese (Chinese Taiwan) ( 須要 Win XP Disk 2 - Language Pack for Multi Language)
Win 2K, XP 可以加上 Language Pack, 可額外支援多語系,包括非 Uni-Code 的繁體和簡體字, 試試加上,看是否可以改善,
|
|
|
|
|
|
newbie
|
 |
« 回覆文章 #6 於: 七月 15, 2005, 04:57:43 pm » |
|
如果單單從上面字面的解釋是很有意義的問題! 收到 下次提問避免歧義 
|
|
|
|
|
|
newbie
|
 |
« 回覆文章 #7 於: 七月 15, 2005, 05:02:06 pm » |
|
試試加上,看是否可以改善, 如果需要增加語言包,那麽utf-8的意義何在呀?這就是我原來問題的本義。我原來以爲utf-8在非中文語系下的作業系統不需要安裝語言包也可以正常顯示。看來是我理解錯了。
|
|
|
|
|
|
newbie
|
 |
« 回覆文章 #8 於: 七月 15, 2005, 05:03:33 pm » |
|
如果英文版xp沒有內建中文字型檔...就算瀏覽器取的中文字的編碼 也沒辦法顯示中文字型.. 因為找不到相對應的字型檔 應該是這樣吧!! ^^"
看來是這樣的了。
|
|
|
|
|
|
seethrou
訪客
|
 |
« 回覆文章 #9 於: 七月 16, 2005, 06:30:39 am » |
|
試試加上,看是否可以改善, 如果需要增加語言包,那麽utf-8的意義何在呀?這就是我原來問題的本義。我原來以爲utf-8在非中文語系下的作業系統不需要安裝語言包也可以正常顯示。看來是我理解錯了。 Win 2K, XP 預設已經支援 UTF-8, 包括中文, 如果在瀏覽時,發覺沒有安裝的字體,瀏覽器會自動有建議給您到網上更新字體,最少 IE5 -6 會這樣, 安裝語言包只是建議, 安裝語言包後可以支援 Non Un-Code Programs, 包括 Big5 的程式
|
|
|
|
|
|
newbie
|
 |
« 回覆文章 #10 於: 七月 16, 2005, 07:48:53 am » |
|
有一些公共場合的電腦(比如説圖書館),是禁止安裝任何新軟体的,連字庫也是,所以如果等到系統發現缺少字庫提示安裝,對於這些被禁止安裝新軟体的公共場合的電腦來説,utf-8等於零。
|
|
|
|
|
|
calvin
訪客
|
 |
« 回覆文章 #11 於: 七月 16, 2005, 08:03:37 am » |
|
有一些公共場合的電腦(比如説圖書館),是禁止安裝任何新軟体的,連字庫也是,所以如果等到系統發現缺少字庫提示安裝,對於這些被禁止安裝新軟体的公共場合的電腦來説,utf-8等於零。
這個問題應該第一: 去跟圖書館講 第二: 去跟微軟講. utf-8只是編碼格式. 並非軟體或os所一定要有的! 如果要避免這些問題. 那就回歸本源,完全使用英文..
|
|
|
|
|
|
newbie
|
 |
« 回覆文章 #12 於: 七月 16, 2005, 08:46:30 am » |
|
都是我講不過的對象乂。  編碼+字庫=正確顯示 然?
|
|
|
|
|
|
seethrou
訪客
|
 |
« 回覆文章 #13 於: 七月 16, 2005, 08:42:49 pm » |
|
有一些公共場合的電腦(比如説圖書館),是禁止安裝任何新軟体的,連字庫也是,所以如果等到系統發現缺少字庫提示安裝,對於這些被禁止安裝新軟体的公共場合的電腦來説,utf-8等於零。
在問題還沒有知道真正原因,或在找不到解決的方法之前,以下的建議仍然有效, 2. 思路上最好也不要有主觀的,因為這往往令到損失很多時間,或問題得不到解決。
說笑的,這法則只是老生常談,但可惜經常看見很多專業人士也被它來打敗。 在電腦應用和技術的支援角度來說,電腦或任何技術完全不完美,因為如果完美,它就不會有發展,被人忘記了。  如果發現有問題,常見的處理態度, 1. 不處理,視而不見,習以為常 2. 不處理,但也不滿,不斷追問,有些更破口大罵,更進一步的,認為這是失敗的,反對使用 3. 試圖找出原因,就算沒法解決,也看看有什麼別的途徑,暫時改善 4. 真正從基本研究問題,提出彧發展新技術,改良設計 現在的感覺是您在某些地方迴旋,是別人可能幫不到您的。  utf-8只是編碼格式. 並非軟體或os所一定要有的! 如果要避免這些問題. 那就回歸本源,完全使用英文..
應該不止這樣,因為電腦根本上一開始,就有大大小小,各種各樣不能解決的問題, 那麼就回歸本源,完全不........
|
|
|
|
|
mrhihi
初學者
離線
文章: 13
|
 |
« 回覆文章 #14 於: 十二月 09, 2005, 03:43:18 am » |
|
都是我講不過的對象乂。  編碼+字庫=正確顯示 然? 應該是說要解決的問題不一樣吧 "话"<--這個是簡體的"話",如果是用big5編碼的話應該會變成亂碼 早期只有ASCII後來各自發展各的文字編碼(big5,gb,其他非英語語系....),因為太亂了,整合起來就提出萬國碼,當然有很多標準,其中一個就是UTF8 編碼+字庫=正確顯示 <<這句大致上是正確的 big5的編碼+big5的字庫=>只能顯示big5所能顯示的字(13,053個中文字,其中有二字為重複編碼) gb編碼+gb字庫=>只能顯示gb所能顯示的字 要把big5編碼跟gb編碼一起顯示,可能會造成衝碼的問題,所以需要另外編碼來解決這個問題, 當然更宏觀來看所有不屬於 ascii 裡面的字都要符合這個規範(彼此不能衝碼) Unicode(萬國碼、統一碼)是一種在計算機上使用的字符編碼。它為每種語言中的每個字符設定了統一並且唯一的二進制編碼,以滿足跨語言、跨平台進行文本轉換、處理的要求。1990年開始研發,1994年正式公布。隨著計算機工作能力的增強,Unicode也在面世以來的十多年裡得到普及。
so.. 如果需要增加語言包,那麽utf-8的意義何在呀?這就是我原來問題的本義。我原來以爲utf-8在非中文語系下的作業系統不需要安裝語言包也可以正常顯示。看來是我理解錯了。
UTF-8不是要讓你在非中文語系下的OS不裝語言包也能正常顯示,而是為了決解上面說的問題  所以在 UTF-8 編碼的網頁可以看到同時存在正體及簡體中文甚至其它非英語語系的字符 而在 big5 編碼的網頁下就不行了..  就像Andrew大大說的 小方格? utf-8編碼是可以讓你在網頁內顯示多種語言.
btw,,,我好像回了一篇很舊的文章  管他的,回都回了,以上是偶個人的淺見,有錯請見諒..*^_^* 參考資料: http://zh.wikipedia.org/wiki/UTF-8http://zh.wikipedia.org/wiki/%E5%A4%A7%E4%BA%94%E7%A2%BC#.E5.BD.B1.E9.9F.BFhttp://zh.wikipedia.org/wiki/Unicodehttp://zh.wikipedia.org/wiki/%E4%BA%82%E7%A2%BC
|
|
|
|
|
|