C#操作XML(简单操作)

第一步:创建xml
   准备工作:
      导入命名空间:System.IO;System.xml
如果要创建如下的xml格式,代码如下
class Program
    {
        static void Main(string[] args)
        {
            if (File.Exists("e:\\Books.xml"))
            {
                File.Create("e:\\Books.xml");
            }
            try
            {
                XmlDocument xmlDoc = new XmlDocument();
                XmlNode root=xmlDoc.CreateNode(XmlNodeType.Element,"Books",null);
                xmlDoc.AppendChild(root);
                XmlNode xmlElement = xmlDoc.CreateNode(XmlNodeType.Element, "book", null);
                XmlAttribute xmlAttribute = xmlDoc.CreateAttribute("id");
                xmlAttribute.InnerText = "1001";
                xmlElement.Attributes.Append(xmlAttribute);
                XmlNode xmlItemAge = xmlDoc.CreateNode(XmlNodeType.Element, "name", null);
                xmlItemAge.InnerText = "c#开发详解";
                XmlNode xmlItemAuthor = xmlDoc.CreateNode(XmlNodeType.Element, "author", null);
                xmlItemAuthor.InnerText = "不清楚";
                XmlNode xmlItemPrice = xmlDoc.CreateNode(XmlNodeType.Element, "price", null);
                xmlItemPrice.InnerText = "120";
 
                root.AppendChild(xmlElement);
                xmlElement.AppendChild(xmlItemAge);
                xmlElement.AppendChild(xmlItemAuthor);
                xmlElement.AppendChild(xmlItemPrice);
 
                XmlDeclaration declaration = xmlDoc.CreateXmlDeclaration("1.0","utf-8",null);
                xmlDoc.InsertBefore(declaration,xmlDoc.DocumentElement);
                xmlDoc.Save("e:\\Books.xml");
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
}
以上虽是一个很简单的Xml文档,但万变不离其中,只要掌握了方法,再复杂的Xml也能创建出来
第二章 读取Xml文档的值 (DOM的方式读取)
  class Program
    {
        static void Main(string[] args)
        {
            try
            {
                XmlDocument xmlDoc = new XmlDocument();
                xmlDoc.Load("E:\\Books.xml");
                XmlNode root = xmlDoc.DocumentElement;
                foreach (XmlNode xmlNode in root.ChildNodes)
                {
                    foreach (XmlNode xmlElement in xmlNode.ChildNodes)
                    {
                        Console.WriteLine(xmlElement.InnerText);
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
}
根据xml文档的节点数,可以增加相应的循环进行解读

posted @ 2010-06-07 10:41  残烟  阅读(8449)  评论(0)    收藏  举报