关于C#使用XMLDocument生成XML文档时,UTF-8编码的BOM问题:

XmlSerializer 的序列化

默认指定 编码 xmlWriterSettings.Encoding = Encoding.UTF8;

这种编码是带bom标记位(BOM: byte order mark : 字节顺序标记)的。

改为:xmlWriterSettings.Encoding = new UTF8Encoding(); 即可。

这样序列化的xml字符串就不会再开头带一个看不见的bom标记。

原文地址:https://www.cnblogs.com/heweiquan123/p/13139307.html