C#將字串轉換成XML格式
阿新 • • 發佈:2019-01-03
【整理, 內容來源於網路及本人實踐】
前幾天寫程式的時候,遇到一個問題,我需要返回一個字串給同事,其內容是XML的標記。但是同事在日誌裡翻看記錄的時候,發現整個xml中沒有一個換行回車,導致他看的時候太難受。於是要求我返回的時候先把字串處理成一個具有xml格式的串,再返回給他。
其實很簡單,自己實現下面一個函式就行
public string FormatXML(string str) { System.Xml.XmlDocument doc = new System.Xml.XmlDocument(); doc.LoadXml(str); System.Text.StringBuilder stringBuilder = new System.Text.StringBuilder(); System.IO.StringWriter stringWriter = new System.IO.StringWriter(stringBuilder); System.Xml.XmlTextWriter xmlWriter = new System.Xml.XmlTextWriter(stringWriter); xmlWriter.Formatting = System.Xml.Formatting.Indented; doc.WriteTo(xmlWriter); return stringBuilder.ToString(); }
呼叫的時候如下
string text = "<users><user><name>wang</name><age>12</age></user><user/><user><name>Li</name><age>14</age></user></users>";
string xmlText = FormatXML(text);
xmlText和text的內容是一樣的,只是多了換行和縮排。