龙空技术网

C#生成XML字符串

有图必应 63

前言:

目前姐妹们对“xmlwriter”可能比较看重,小伙伴们都想要剖析一些“xmlwriter”的相关内容。那么小编在网上网罗了一些对于“xmlwriter””的相关知识,希望咱们能喜欢,看官们一起来学习一下吧!

用C#生成如下的XML字符串

<?xml version="1.0" encoding="utf-8"?>

<sites>

<site>

<name>有图必应</name>

<url>bing.wilii.cn</url>

</site>

</sites>

实现代码如下:

StringBuilder sb = new StringBuilder();

XmlTextWriter writer = new XmlTextWriter(new StringWriter(sb));

writer.WriteStartDocument();//这句话将生成<?xml version="1.0" encoding="utf-16"?>

writer.WriteStartElement("sites");

writer.WriteStartElement("site");

writer.WriteElementString("name", "有图必应");

writer.WriteElementString("url", "bing.wilii.cn");

writer.WriteEndElement(); // site

writer.WriteEndElement(); // sites

writer.Close();

这段代码有个问题,就是这句代码writer.WriteStartDocument(); 生成的是<?xml version="1.0" encoding="utf-16"?>,而不是我们想要的<?xml version="1.0" encoding="utf-8"?>,网上找了好多代码,尝试了很多,均以失败告终。

最后只能用个折衷的方法解决,反正是字符串,字符串替换一下就搞定了。

sb.ToString().Replace("utf-16", "utf-8");

标签: #xmlwriter #xmlwriter怎么用 #xml writer #xmlwriterwrite 特殊字符 #xml字符串