用C#创建XML, XML格式化输出

demo:

XmlDocument doc = new XmlDocument();
XmlDeclaration dec = doc.CreateXmlDeclaration("1.0", "GB2312", null);
doc.AppendChild(dec);
//创建一个根节点(一级)
XmlElement root = doc.CreateElement("First");
doc.AppendChild(root);
//创建节点(二级)
XmlNode node = doc.CreateElement("Seconde");
//创建节点(三级)
XmlElement element1 = doc.CreateElement("Third1");
element1.SetAttribute("Name", "Sam");
element1.SetAttribute("ID", "665");
element1.InnerText = "Sam Comment";
node.AppendChild(element1);

XmlElement element2 = doc.CreateElement("Third2");
element2.SetAttribute("Name", "Round");
element2.SetAttribute("ID", "678");
element2.InnerText = "Round Comment";
node.AppendChild(element2);



root.AppendChild(node);
doc.Save(@"d:b.xml");
Console.Write(doc.OuterXml);

 格式化输出函数:

private static string formatXml(object xml){
    XmlDocument xd;
    if(xml is XmlDocument) {
        xd=xml as XmlDocument;
    }else{ 
        xd = new XmlDocument();
        xd.LoadXml(xml as string);
    }
    StringBuilder sb = new StringBuilder();
    StringWriter sw = new StringWriter(sb);  
    XmlTextWriter xtw = null;  
    try{  
        xtw = new XmlTextWriter(sw);  
        xtw.Formatting = Formatting.Indented;  
        xtw.Indentation = 1;  
        xtw.IndentChar = '	';  
        xd.WriteTo(xtw);  
    }finally{  
        if (xtw != null)  
            xtw.Close();  
    }  
    return sb.ToString();
}  
原文地址:https://www.cnblogs.com/kingBook/p/6906616.html