本篇將說明,三字節 UTF-8 字符集,歷史來由,
還有,使用 UTF-8 文件存檔格式時,
到底那些不可以包含 BOM 標籤,那些可以包含 BOM 標籤?
歷史
其實這個 BOM 標籤,要配合前篇 簡繁轉換,注意事項二,雙字節與三字節 一起看
很久以前的字符集,主流是雙字節,但後來字符集不夠放
,還有衝碼的問題,很難處理,時常造成不明錯誤,
後來出了四字節 UTF-16 字符集,但太佔容量,
最後折中,用成三字節 UTF-8 字符集
那麼軟體要如何判斷文件是雙字節,還是三字節?
就是依照檔頭的 BOM 標籤,但...如果是跑程式,加上 BOM 標籤,會出錯
簡介
什麼是 BOM 標籤,參考 https://zh.wikipedia.org/zh-tw/位元組順序記號
不含 BOM 標籤,循序一行一行執行的,如 php html js css 等,網頁程式
含 BOM 標籤,載入文件後,抓取需要的部分,如 srt ass 等,字幕檔
不含 BOM 標籤
現在的瀏覽器,是看 charset=utf-8 那串代碼,來判斷,網頁的輸出格式,所以不用含 BOM 標籤
如果含到,會出現空白,或是執行錯誤,參考 編寫 UTF-8 網頁,不可含 BOM 標籤
使用 ajax 無刷新網頁,其 ajax 規定傳值的字符集,就是 UTF-8 字符集
如果你用其他的,還要轉換才能用,轉換來,轉換去,非常容易出錯
php mysql html js css ...等,這些網頁相關程式,
全部統一用 UTF-8 字符集,不含 BOM 標籤,問題比較少
只是要注意,會不會含到 BOM 標籤,因為有的文字編輯器,會自動加上...
含 BOM 標籤
這個一般是用在 .srt .ass .ssa 之類的字幕檔,才要含 BOM 標籤
在 https://zh.wikipedia.org/wiki/位元組順序記號 這裡,可見各種 (萬國碼) 記號
影音播放器 及 影音轉檔 需要靠那串記號,來判斷,載入的文件是 UTF-8 字符集,還是 UTF-16 小位在前字符集,還是 UTF-8 小位在後字符集
影音播放器 及 影音轉檔 載入 .srt .ass .ssa 之類的字幕檔,如果沒有讀取到,那串 (萬國碼) 記號,字幕顯示時,八成是亂碼
看過本篇,相信大家,應該能夠了解,哪裡不需要含 BOM 標籤,哪裡需要含 BOM 標籤
返回目錄 ( 簡繁轉換 ) 之相關教學,連結總整理
對上述圖文教學,還不太明白的話,請至下方連結,查看 youtube 視頻解說
視頻解說之第一部分 https://www.youtube.com/watch?v=57gWZ7dOfMY
謝謝大家,抽空觀看,files備份檔名 software02038
沒有留言:
張貼留言
由於經常被灌水,所以您再發表留言之後,需要耐心的等待博客主之審核,於審核過後才會公開您的留言,因此請您不要重複的留言,謝謝您的留言。
Hello my friend, I have no money, I am very poor, My blog is super chill, I welcome your comments, but in order to maintain a healthy discussion, please avoid spam or irrelevant comments.