看起來像是 xp 原有的 unicode 問題,試試Unicode 補完計畫。
下載網址:
http://hotdl.com/dl/showfile.php?id=1570&category=20 or
http://search.cpatch.org/search.php?...&type=relation
簡介說明:
...
Unicode 技術
其實,為了解決不同語系之間資訊交流的問題。有一種技術存在,叫做 Unicode。
事實上,Windows NT/2000/XP 的系統核心就是 Unicode。
簡單的說,Unicode 是一個超大的文字庫,他蒐集了世界上所有語言的大部分文字,而收錄在同一個文字庫裡。包括 繁/簡體中文、日文、韓文,以及許多想不到的語文。因為 Windows 2000 使用 Unicode 作為核心,所以理論上,Windows 2000應該可以同時處理世界各國的文字。
Unicode 裡,無論是英文還是漢字、假名,每個字都是兩個 bytes(位元組)。
而之前的傳統編碼,則是美國制定的標準(稱為 ASCII 碼,定為 ANSI 標準),英文字母每個字只要 1 個 byte 儲存。但因 1 個 byte 極限只能表示 256 個字,不敷漢字圈使用,所以中文、日文等文字,還自己在 ASCII 的基礎上,以兩個字元組成方塊字,建立出各自的規範,如台灣的 BIG5 與日本的 JIS 等。後文我們將這些所有建立在 ASCII 上的各種漢字圈延伸編碼方式,稱為 ANSI 編碼。
雖然說 Windows 2000/XP 下,文字是 Unicode,但是從 MS-DOS 時代、甚至 Windows 3.1/95/98/ME 所留下來的大量資料,當時都是使用 ANSI 編碼儲存的。所以,Windows 2000 並不可能真的放棄掉 ANSI 編碼。於是,系統就必須隨時自動處理 Unicode 跟 ANSI 之間的轉換。
例如說,「一」這個字的 BIG-5 碼是 0xA440,而他的 Unicode 是 U+4E00,當今天網頁被下載的時候,傳進來的雖然是 0xA440,但是系統會自動把他轉成 Unicode 的 U+4E00,所以顯示在 IE 畫面上時,他已經被當作 Unicode 的 U+4E00 顯示了;而當我今天留言的時候,從注音輸入法打出來的其實是 Unicode 的 U+4E00,可是按下送出了以後,IE 事實上會判斷網頁的語系,因為是 BIG5 的網頁,所以會把他自動轉換成 0xA440 後才傳送出去。
...
...
...
BIG-5 碼的內容有常用字 5,401 個、次常用國字 7,693 個及符號 471 個,共計約 13600 字。而當時極為普遍的倚天中文系統,為了反映使用需求,另外編入了日文平假名、日文片假名、俄文字母、圈號數字、雙線表格、以及七個常用外字 (痋B蛂B堙B晼B琚B菕B),也就是所謂的倚天擴充字集,倚天擴充字集被安置在 BIG-5 碼中原先定義為使用者造字區的位置。
由於倚天中文系統當時在台灣、香港的佔有率幾乎達到 100%,所以倚天擴充字集可以說是成為 BIG-5 碼非正式的標準。
然而,微軟 Windows 3.1 上市的時候 (※註:Windows 3.1 是第一個有中文版的 Windows。),很荒謬的,說沒有採用倚天擴充字集,卻採用了雙線表格、以及七個常用外字等部分,但日文平假名、日文片假名、俄文字母、圈號數字等,卻都沒有被採用。
隨著 Windows 95 的來臨,台灣也進入了視窗時代,可是 Windows 下並沒有大家熟悉的日文假名。而且隨著 Windows 一版一版的上升到 XP,甚至 Server 2003 了,還是沒有這個部份。
越來越難懂了,是否可以簡化一點啊?
總之啦,雖然台灣的內碼是 BIG5,日本的內碼是 Shift-JIS,但在 Windows 2000/XP 下,藉由核心的 Unicode 作為橋樑,在一般的情況下,應該資料可以互相共享才對。
真正的問題在於 BIG5 的缺字。當某個字 ShiftJIS 有,但是 BIG5 沒有時,那個字轉換成 BIG5,就會變成問號。例如假名或日本簡體字,就如同上面說的,微軟採用的 BIG5 並沒有包括假名。GB 碼的簡體字也是一樣的情形。
...
...
因為在這裡一言難盡,還有待您自己安裝來用用看
由 Sunny 推薦