zoukankan      html  css  js  c++  java
  • LinqToXml (一) Create Xml file By Dom /Linq

        目前,在xml 应用编程领域比较流行的开发模型是W3C 提供的DOM(文档对象模型),在.net Framework 通过命名空间 System.Xml 对该技术提供了支持。随着Linq to XMl 的诞生, .net 3.5 之后,我们可以使用Linq to sql 操作XMl 。以下是通过两种方式创建相同结构的xml文件。

     1 using System;
     2 using System.Collections.Generic;
     3 using System.Linq;
     4 using System.Text;
     5 using System.Threading.Tasks;
     6 using System.Xml;
     7 using System.Xml.Linq;
     8 
     9 namespace Linq2Xml
    10 {
    11     class Program
    12     {
    13         static void Main(string[] args)
    14         {
    15             DateTime dt1 = DateTime.Now;
    16             CreateXmlByDom(1400);
    17             DateTime dt2 = DateTime.Now;
    18             TimeSpan ts1 = dt2 - dt1;
    19             DateTime dt3 = DateTime.Now;
    20             CreateXmlByXml(1400);
    21             DateTime dt4 = DateTime.Now;
    22             TimeSpan ts2 = dt4 - dt3;
    23 
    24             Console.WriteLine("采用Dom构建xml耗时:"+ts1.Milliseconds);
    25             Console.WriteLine("采用Linq构建xml耗时:" + ts2.Milliseconds);
    26             Console.ReadKey();
    27         }
    28 
    29         public static void CreateXmlByDom(int n)
    30         {
    31             XmlDocument doc = new XmlDocument();
    32             XmlElement booklist = doc.CreateElement("booklist");
    33             XmlElement book, author;
    34             for (int i = 0; i < n; i++)
    35             {
    36                 book = doc.CreateElement("book");
    37                 book.SetAttribute("name", "book1-"+i);
    38                 author = doc.CreateElement("author");
    39                 author.InnerText = ""+i+"";
    40                 book.AppendChild(author);
    41                 booklist.AppendChild(book);
    42             }
    43                
    44             doc.AppendChild(booklist);
    45             doc.Save("c:/xmlttt.xml");
    46         }
    47 
    48         public  static void CreateXmlByXml(int n)
    49         {
    50             XElement[] bookArray =new XElement[n] ;
    51             for (int i =0;i< n;i++)
    52             {
    53                 bookArray[i] = new XElement("book", new object[]
    54                 {
    55                     new XAttribute("name","book1-"+i),
    56                     new XElement("author",""+i+"")
    57                 });
    58             }
    59             XElement booklist = new XElement("booklist", bookArray);
    60             XDocument xdoc = new XDocument();
    61             xdoc.Add(booklist);
    62             xdoc.Save("c:/xmlttt2.xml");
    63         }
    64     }
    65 }    
  • 相关阅读:
    聊聊Java中的异常及处理
    mysql各个版本介绍
    三范式理解
    spring 自定义注解
    双亲委派机制
    架构师之路
    访问localhost报错404
    删除重复记录sql
    如何测试kafka集群能否正常工作?
    SQL14
  • 原文地址:https://www.cnblogs.com/kim-meng/p/5912547.html
Copyright © 2011-2022 走看看