字符編碼探測字符集探測又稱為代碼頁檢測是個啟發式猜測代表文字的一系列字節的字符編碼。其算法通常依據對字節樣式的統計分析。這並不是一個萬無一失的方法因為它依賴於統計數據——比如有些Windows版本會誤把ASCII編碼的"Bush hid the facts"當作中文UTF-16LE

為數不多的能可靠探測的情況之一是探測UTF-8。這是因為UTF-8中有大量的無效字節序列,所以當其他編碼方式使用字節中的高位bit時不可能通過UTF-8有效性測試。不幸的是不完善的字符集探測程序不優先進行可靠的UTF-8測試於是把UTF-8定為其他編碼。

其它的編碼識別方式

編輯

由於字符集探測的不可靠,所以通常是用屬性標籤去註明是用何種編碼。[1]

在HTML的<head></head>區塊裡

例如在HTML文件中使用一個meta element去標示出編碼種類: 在HTML5使用

 <meta charset="utf-8" />

相當於HTML4使用

 <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />

也可以在HTTP傳輸文件時,在HTTP檔頭裡使用Content-type通知給瀏覽器知道使用何種編碼,以使瀏覽器能正確的顯示出內容。[2]

在asp輸出頁面前使用
 Response.Charset="utf-8"

相當於使用

 Response.AddHeader "Content-Type", "text/html;charset=utf-8"
JSP輸出頁面前使用
 <%@ page contentType="text/html; charset=utf-8" %>
PHP輸出頁面前使用
 header('Content-type: text/html; charset=utf-8');

參考資料

編輯

相關

編輯

外部連結

編輯