相似詞
出現亂碼、顯示亂碼、亂碼怎麼辦、亂碼問題、編碼的問題、編碼問題。
簡介
亂碼指的是電腦系統不能顯示正确的字符,而顯示其他無意義的字符或空白,如一堆ASCⅡ代碼。這樣所顯示出來的文字統稱為亂碼。
亂碼是因為“所使用的字符的源碼在本地計算機上使用了錯誤的顯示字庫”,或在本地計算機的字庫中找不到相應于源碼所指代的字符所緻。不同國家和地區的文字字庫采用了相同的一段源碼,或是源文件中因為文件受到破壞,緻使計算機默認提取的源碼錯誤,或是計算機沒有安裝相應字庫,都有可能産生亂碼。
種類
漢字亂碼現象有4種類型:
1.文本亂碼:是Windows系統顯示亂碼,如:菜單、桌面、提示框等。這是由于注冊表中有關字體部分的設置不當引起的;
2.文檔亂碼:是各種應用程序、遊戲本來顯示中文的地方出現亂碼。這種亂碼形成的原因比較複雜,有第1類的亂碼原因,也可能是軟件中用到的中文動态鍊接庫被英文動态鍊接庫複蓋所造成的;
3.文件亂碼:主要是指郵件亂碼;
4.網頁亂碼:是由于港澳的繁體中文大五碼(BIG5)與大陸簡體中文(GB2312)不通用而造成的。
修正亂碼,可以使用系統内碼轉換工具,如“南極星”等,将系統内碼轉換為對應内碼,
字符即可正确顯示。
産生原因
1.一般是軟件程序解碼錯誤。如浏覽器把GBK碼當成是Big5碼顯示,或電子郵件程序把對方傳來的郵件錯誤解碼。如果在發送時編碼錯誤,收件者的電郵程序是不能解碼的,需要寄件者的電郵程序重新編碼再寄。
2.字體檔案(fontfile)不對。
3.來源編碼錯誤,或文件受到破壞。
4.一種語言版本的操作系統安裝了另外一種語言版本的應用程序,或者應用程序安裝的升級補丁的語言版本與應用程序原來安裝的語言版本不一緻。
5.早期單字節的應用程序在打開雙字節語言的文件時不能正确識别文字的分割,在換行的地方把一個字從中分成兩段,導緻緊接在後面的整個一行全部都是亂碼。
6.低版本的應用程序不能識别高版本的程序創建的文件。
7.由于TXD等修改文件出現内部沖突,一些修改遊戲的MOD(modification)CLEO、IV補丁、真實補丁、技能補丁、升級補丁和CCI人物補丁等遊戲修改軟件的“Readme”“必看!”等閱讀文件會出現亂碼。
8.電腦軟件的錯誤操作也會導緻整個文件出現亂碼
9.數據庫原因:
1、數據正确,但數據庫配置錯誤,使用了錯誤的字符集。一般是數據庫移植,還原時DBA的錯誤造成的。
2、數據正确,但拿到的數據錯誤。
一般是客戶端使用了默認的字符集,比如在GBK的機器上開發,但換到Linux下面就出現讀取的數據為亂碼了。
解決方法是:在連接參數裡面明确指定數據傳輸用的字符集,而不是使用操作系統默認的。
3、數據錯誤。一般是客戶端發來的數據編碼問題。比如頁面發送數據是UTF-8,可是後台處理程序是GBK的,結果造成保存到數據庫的數據為亂碼。
解決方法:所有字符集編碼都采用統一的編碼。比如全部用GBK的。