1. 程式人生 > >C#將字串轉換成XML格式

C#將字串轉換成XML格式

【整理, 內容來源於網路及本人實踐】

前幾天寫程式的時候,遇到一個問題,我需要返回一個字串給同事,其內容是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的內容是一樣的,只是多了換行和縮排。