2010年3月31日 星期三

Windows記事本各種編碼 ANSI, Unicode, Unicode big endian, UTF-8

有時候開文件卻出現亂碼,換個編碼方式即可正常顯示文字
使用記事本另存新檔時,可選擇的編碼有
ANSI、Unicode、Unicode big endian、UTF-8
ANSI就是系統預設的編碼了,
但我好奇平平都是Unicode怎麼還有三個選項,要用哪一個阿?
原來Unicode制定了編碼,但儲存的方式卻有很多種
我自己分別試了一下中、英文檔案佔用空間的大小,
ANSI佔用空間最小、UTF-8佔用空間最大,另外兩個Unicode編碼則相同

1)ANSI是預設編碼
對於英文檔是ASCII編碼
如果Windows是繁體中文版會採用Big5編碼
如果Windows是簡體中文版就採用GB2312編碼

2)Unicode編碼
採用Unicode little endian,為Windows上Unicode的預設存儲方式
將Unicode中表示同一個字元的兩個位元組順序返過來。
主要目的是為了適應CPU處理字元的方式,加快處理速度。

3)Unicode big endian編碼
Unicode字元編碼以正序存儲。

4)UTF-8編碼
UTF-8是Unicode的實現方式之一,
是一種變長的編碼方式,用來在網際網路上使用

5 意見 :

匿名 提到...

非常好,我想問問,有辦法在另存的時候,預設成utf8嗎?
應該是跟註冊表有關吧?

MEMO123 提到...

我想應該是有方法的,但我沒研究,拍謝!

匿名 提到...

微軟論壇的方法有效,不過只適用於以右鍵新增的txt檔。如果從【開始】【程式集】打開的txt檔則無效。
http://social.answers.microsoft.com/Forums/en-US/w7programs/thread/525f0ae7-121e-4eac-a6c2-cfe6b498712c

MEMO123 提到...

好的答案,有時間來試試!

Unknown 提到...

但是以windows記事本另存UTF-8檔會加上+BOM,不利於在其他程式中用,還要再用EDITPLUS等文書程式再轉乙次..

張貼留言