Encoding.UTF8 與 new UTF8Encoding(false) 有什么區別?


 

System.Text.Encoding.UTF8 是一個靜態實例,它省略了 BOM,而 new UTF8Encoding(false) 創建的實例是含有 BOM 的。

BOM,即 Byte Order Mark,也即字節流標記,它是用來讓應用程序識別所用的編碼的。UTF-8 的 BOM 是 0xEFBBBF。

public UTF8Encoding(bool encoderShouldEmitUTF8Identifier),可以看出,如果我們指定參數為 false,表示不省略 BOM;如果為 true,則和 Encoding.UTF8 一樣了。注意,在 msdn 上似乎把這個參數的意思解釋反了。有興趣的朋友可以看一看:http://msdn.microsoft.com/zh-cn/community/s064f8w2.aspx


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM