打开主菜单

中文亂碼是中文系統的一種現象,這在過去未有一套統一的中文內碼標準時,情況尤其嚴重。而隨着互聯網的普及,兩岸之間或世界各地用戶交流之際,亂碼現象亦都會去了解因為各方使用的內碼不同而產生相衝的現象。

目录

萬碼奔騰的年代编辑

在過去,由於繁體中文使用者缺乏一個具有號召力的內碼標準,不同使用者都會使用各自的標準。比較普遍的是銀行由於主要使用IBM的商業電腦,很自然的亦選擇了IBM5550作為其內碼標準。這些用5550內碼的文件,一旦下載到微機上,若要轉寄與其他人使用,就要透過轉碼換成Big5,其他人才可以閱讀。

另一方面,在會計界有不少人都直接使用外國的專門軟體,而為免衝碼問題而使畫面凌亂,不少的IT部門都把公司電腦的內碼換成倚天碼。本來會計人員過去只是把計算結果列印而提交報告,並未有任何問題。到後來隨着電子表格的興起,用戶才發覺到當公司與外界使用的內碼不同,會引起不少問題,才開始有人正視這問題。

UTF-8与Big5的相互转换编辑

隨著UTF-8的普及化,許多繁體中文IRC頻道也逐漸從Big5轉變成UTF-8;然而在這種過渡時期中,仍然有不少IRC頻道是採用Big5的,所以使用者參與了新的頻道時,通常會想要先確定自己的字元編碼有沒有設錯,人們最常用的測試字眼不外乎:

 Jedi>中文

或者

 Jedi>測試

或者

Jedi>導航

很不幸地,這幾個字的字碼可能剛好會同時對應到UTF-8以及Big5上,所以當打出這種測試句子的人用的是UTF-8,而頻道上其他人用的卻是Big5,也就是所謂的「打八萬聽五筒」的情況時,其他人就會看到:

 Jedi>銝剜��

或者

 Jedi>皜祈岫

或者

Jedi>撠舘⏛

简体中文编码体系与Unicode及UTF-8的相互转换编辑

在Unicode编码与简体中文编码系统(例如GB2312GBKGB18030CP936)转换时,部分简体中文编码的文字在Unicode编码中并不存在,Unicode会以“未识别字符(U+FFFD)”作为内码记录,而对外以UTF-8表现为“0xEF0xBF0xBD”,当多个“0xEF0xBF0xBD”连续出现,而且以简体中文编码去解释的话,就会被解析为多个“锟斤拷”。(锟(0xEFBF)、斤(0xBDEF)、拷(0xBFBD))

產生的問題编辑

過往,亂碼所產生的問題,往往只是閱讀上的不方便,因為文字變成了亂碼,使用戶看不到文字的內容。然而,現時由於電腦軟件保安設計的問題,亂碼隨時可能會使應用程式不正常關閉。

參看编辑