1 回答

TA貢獻(xiàn)1872條經(jīng)驗(yàn) 獲得超4個贊
Unicode是US-ASCII字符集的超集,
UTF-8是8位US-ASCII字符編碼的超集
沒有ANSI 編碼這樣的東西。
可能的意思是US-ASCII。并且每個 8 位 US-ASCII 文件也是一個 UTF-8 文件。Unicode 是 US-ASCII 的超集。當(dāng)使用八位字節(jié)寫出時,ASCII 文件是UTF-8 文件。UTF-8 編碼是故意以這種方式設(shè)計(jì)的,以便兼容。
US-ASCII 是一個 7 位字符集,只有 128 個字符,編號為 0-127。因此,如果使用八位字節(jié)(8 位)編寫,則每個八位字節(jié)的第一位都是零。
沒有文件元數(shù)據(jù)
了解 US-ASCII 文件和 UTF-8 文件(沒有 BOM?)都只是一堆位,沒有元數(shù)據(jù)。不幸的是,計(jì)算機(jī)行業(yè)從未設(shè)法為文件系統(tǒng)元數(shù)據(jù)建立標(biāo)準(zhǔn)。因此應(yīng)用程序必須猜測內(nèi)容的內(nèi)容,或者用戶必須指明預(yù)期的格式。
您的文本編輯器可能會查看在您的文件中找到的字符域,然后嘗試使用盡可能小的范圍編碼來保守地標(biāo)記文件。如果只有 US-ASCII 字符,則標(biāo)記為 US-ASCII(顯然誤報(bào)為“ANSI”)。一旦您添加代碼點(diǎn)超出 ASCII 代碼點(diǎn)的更高編號的字符,然后標(biāo)記為 UTF-8。
添加回答
舉報(bào)