您好,登錄后才能下訂單哦!
小編給大家分享一下如何使用XmlWriter寫Xml,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
1.如何使用XmlWriter寫Xml文檔聲明
// WriteStartDocument方法可以接受一個bool參數(表示standalone,是否為獨立文檔)或者不指定參數standalone保持默認值 xmlWriter.WriteStartDocument(false|true);
注意在使用WriteStartDocument方法后最好調用xmlWrite.WriteEndDocument()方法來關閉所有可能未關閉標簽
2.如何使用XmlWriter寫xml節點以及屬性
//寫節點 xmlWriter.WriteStartElement("cat"); //給節點添加屬性 xmlWriter.WriteAttributeString("color", "white"); //給節點內部添加文本 xmlWriter.WriteString("I'm a cat"); xmlWriter.WriteEndElement();
或者通過WriteElementString(string,string)方法寫xml節點同時寫下節點值,如下
//通過WriteElementString可以添加一個節點同時添加節點內容 xmlWriter.WriteElementString("pig", "pig is great");
3.如何寫CData
xmlWriter.WriteStartElement("dog"); //寫CData xmlWriter.WriteCData("<strong>dog is dog</strong>"); xmlWriter.WriteEndElement();
4.如何使用XmlWriter添加注釋
xmlWriter.WriteComment("this is an example writed by 玉開技術博客 http://www.php.cn/ ");
5.如何設置XmlWriter的輸出格式,解決輸出UTF-16問題
設置xml輸出格式,需要通過XmlWriterSettings類,如下代碼
XmlWriterSettings settings = new XmlWriterSettings(); //要求縮進 settings.Indent = true; //注意如果不設置encoding默認將輸出utf-16 //注意這兒不能直接用Encoding.UTF8如果用Encoding.UTF8將在輸出文本的最前面添加4個字節的非xml內容 settings.Encoding = new UTF8Encoding(false); //設置換行符 settings.NewLineChars = Environment.NewLine;
完整的代碼示例如下:
/*玉開技術博客 http://www.php.cn/ */ using System; using System.Collections.Generic; using System.Text; using System.IO; using System.Xml; namespace UseXmlWriter { class Program { static void Main(string[] args) { using (MemoryStream ms = new MemoryStream()) { XmlWriterSettings settings = new XmlWriterSettings(); //要求縮進 settings.Indent = true; //注意如果不設置encoding默認將輸出utf-16 //注意這兒不能直接用Encoding.UTF8如果用Encoding.UTF8將在輸出文本的最前面添加4個字節的非xml內容 settings.Encoding = new UTF8Encoding(false); //設置換行符 settings.NewLineChars = Environment.NewLine; using (XmlWriter xmlWriter = XmlWriter.Create(ms, settings)) { //寫xml文件開始<?xml version="1.0" encoding="utf-8" ?> xmlWriter.WriteStartDocument(false); //寫根節點 xmlWriter.WriteStartElement("root"); //寫字節點 xmlWriter.WriteStartElement("cat"); //給節點添加屬性 xmlWriter.WriteAttributeString("color", "white"); //給節點內部添加文本 xmlWriter.WriteString("I'm a cat"); xmlWriter.WriteEndElement(); //通過WriteElementString可以添加一個節點同時添加節點內容 xmlWriter.WriteElementString("pig", "pig is great"); xmlWriter.WriteStartElement("dog"); //寫CData xmlWriter.WriteCData("<strong>dog is dog</strong>"); xmlWriter.WriteEndElement(); xmlWriter.WriteComment("this is an example writed by 玉開技術博客 http://www.php.cn/ "); xmlWriter.WriteEndElement(); xmlWriter.WriteEndDocument(); } //將xml內容輸出到控制臺中 string xml = Encoding.UTF8.GetString(ms.ToArray()); Console.WriteLine(xml); } Console.Read(); } } }
以上是“如何使用XmlWriter寫Xml”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。