C#基础巩固(2)-Linq To XML创建XML

本文详细介绍了XML文件的基本格式,并对比了传统XML创建方式与LinqToXML的使用方法,展示了LinqToXML简化XML创建过程的特点。

一、首先要清楚一个正确的XML基本格式是怎样的。

 1.后缀名.xml结尾

 2.有一行描述

 3.有且仅有一个根节点。

如图:

一个正确的xml文件能够被浏览器打开且显示。所以判断一个xml文件有没有错误也可以用浏览器打开看有没有报错。

二、传统的XML创建方式。

      命名空间:System.XML 

      用到的类库:XmlDocument -文档

                     XmlElement  -元素

                     XmlAttribute -属性

      代码:

static void Main(string[] args)
        {
            TraditionalCreateXML();
        }
        private static void TraditionalCreateXML()
        {
            XmlDocument xdoc = new XmlDocument();
            //所有的元素使用文档节点(XmlDocument)创建
            XmlDeclaration xdec = xdoc.CreateXmlDeclaration("1.0", "gb2312", null); //xml描述
            xdoc.AppendChild(xdec); //添加描述
            XmlElement xele = xdoc.CreateElement("root"); //创建节点1
            XmlElement xele2 = xdoc.CreateElement("person"); //创建节点2
            xdoc.AppendChild(xele);  //xdoc添加节点 --根节点 
            xele.AppendChild(xele2); //在节点1(xele)下添加一个节点2(xele2)
            XmlAttribute xAttr = xdoc.CreateAttribute("id"); //创建属性
            xAttr.Value = "123";  //属性的值
            xele.Attributes.Append(xAttr); //把属性插入到节点
            XmlText txt = xdoc.CreateTextNode("我是文本节点");  //创建文本
            xele2.AppendChild(txt); //把文本插入到节点
            xdoc.Save("1.xml");
        }

  关键的思想是:创建元素->添加元素,执行完上面代码 在bin->debug目录下找到1.xml这个文件。

     内容如下:

    

三、Linq To XML创建XML

       命名空间: System.XML.Linq;

        类库: XDocument  -文档

                XElement -元素

                XAttribute - 属性

   3.1 Linq To XML用法

   代码:

 static void Main(string[] args)
        {
            LinqToXMLCreateXML();
            //TraditionalCreateXML();
        }
        private static void LinqToXMLCreateXML()
        {
            XDocument xdoc = new XDocument();
            //描述会自动创建  Encoding为UTF-8  如果想改成GB2312的  XDeclaration dec=new XDeclaration("1.0","gb2312","yes");
            XElement xRoot = new XElement("root"); //创建节点
            XElement xele2 = new XElement("person", "我是文本");
            XAttribute xAttr = new XAttribute("Id", "123"); //创建属性
            xdoc.Add(xRoot); //添加节点
            xRoot.Add(xele2);
            xRoot.Add(xAttr); //添加属性
            xdoc.Save("2.xml");
        }

 执行代码,在bin->debug 目录下找到2.xml文件

   从上面代码可以看出,Linq TO XML的方法比传统的方法简单,特点有。

     1.创建元素的时候可以用 键/值(key/value)对的方法创建元素并赋值

     2.添加元素或者属性的时候,都是用Add()方法。

   3.2真正的linq语法

    linq 语法主要特点: 1.基于函数式    f1().f2().f3().....

                               2.链式编程

    把上面3.1的代码写成linq语法为:

static void Main(string[] args)
        {
            LinqToXMLCreateXML2();
            //LinqToXMLCreateXML();
            //TraditionalCreateXML();
        }
        private static void LinqToXMLCreateXML2()
        {
            new XDocument(
                new XElement("root",
                    new XAttribute("Id","123"),
                    new XElement("person","我是一个文本")
) ).Save(
"3.xml"); }

 

转载于:https://www.cnblogs.com/wei325/p/4891156.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值