C#UTF-8-bom转为UTF-8
系统功能是生成个utf-8的xml文件下载到本机,但是用户的系统是Linux,我们的web系统部署到IIS上,生成的XML文件被windows给搞成了utf-8bom,linux又识别不了这种bom.
解决:
XmlDocument xmlDoc = new XmlDocument();
//创建类型声明节点
XmlNode firstNode = xmlDoc.CreateXmlDeclaration("1.0", "utf-8", "");
xmlDoc.AppendChild(firstNode);
//创建根节点
XmlElement root = xmlDoc.CreateElement("unitData");
//xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
//xsi:noNamespaceSchemaLocation="unitData-1.0.xsd"
root.SetAttribute("xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance");
//root.SetAttribute("noNamespaceSchemaLocation", "xsi", "unitData-1.0.xsd");
var attr = xmlDoc.CreateAttribute("xsi:noNamespaceSchemaLocation", "http://www.w3.org/2001/XMLSchema-instance");
attr.Value = "