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文件。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Xml;
using System.Xml.Linq; namespace Linq2Xml
{
class Program
{
static void Main(string[] args)
{
DateTime dt1 = DateTime.Now;
CreateXmlByDom();
DateTime dt2 = DateTime.Now;
TimeSpan ts1 = dt2 - dt1;
DateTime dt3 = DateTime.Now;
CreateXmlByXml();
DateTime dt4 = DateTime.Now;
TimeSpan ts2 = dt4 - dt3; Console.WriteLine("采用Dom构建xml耗时:"+ts1.Milliseconds);
Console.WriteLine("采用Linq构建xml耗时:" + ts2.Milliseconds);
Console.ReadKey();
} public static void CreateXmlByDom(int n)
{
XmlDocument doc = new XmlDocument();
XmlElement booklist = doc.CreateElement("booklist");
XmlElement book, author;
for (int i = ; i < n; i++)
{
book = doc.CreateElement("book");
book.SetAttribute("name", "book1-"+i);
author = doc.CreateElement("author");
author.InnerText = "李"+i+"金";
book.AppendChild(author);
booklist.AppendChild(book);
} doc.AppendChild(booklist);
doc.Save("c:/xmlttt.xml");
} public static void CreateXmlByXml(int n)
{
XElement[] bookArray =new XElement[n] ;
for (int i =;i< n;i++)
{
bookArray[i] = new XElement("book", new object[]
{
new XAttribute("name","book1-"+i),
new XElement("author","李"+i+"金")
});
}
XElement booklist = new XElement("booklist", bookArray);
XDocument xdoc = new XDocument();
xdoc.Add(booklist);
xdoc.Save("c:/xmlttt2.xml");
}
}
}
LinqToXml (一) Create Xml file By Dom /Linq的更多相关文章
- create xml file from sql script
Declare @xmlDoc xmlSET @xmlDoc = (SELECT * FROM USERS AS UserTable For XML AUTO, ELEMENTS, ROOT('Roo ...
- create pdf file using Spire.Pdf or iTextSharp or PdfSharp
Spire.Pdf: 注:pdf 显示中文一定要设置相应的中文字体,其他外文类似.否则显示为乱码( 如果繁体的服务器上生成的中文内容PDF文档,在简体操作系统保存或并传给简体系统上查看,会存在乱码问题 ...
- JavaEE实战——XML文档DOM、SAX、STAX解析方式详解
原 JavaEE实战--XML文档DOM.SAX.STAX解析方式详解 2016年06月22日 23:10:35 李春春_ 阅读数:3445 标签: DOMSAXSTAXJAXPXML Pull 更多 ...
- [vb.net]XML File Parsing in VB.NET
Introduction Parsing XML files has always been time consuming and sometimes tricky. .NET framework p ...
- How to: Write Object Data to an XML File
This example writes the object from a class to an XML file using the XmlSerializer class. Namespace: ...
- Java解析XML汇总(DOM/SAX/JDOM/DOM4j/XPath)
[目录] 一.[基础知识——扫盲] 二.[DOM.SAX.JDOM.DOM4j简单使用介绍] 三.[性能测试] 四.[对比] 五.[小插曲XPath] 六.[补充] 关键字:Java解析xml.解析x ...
- java.lang.RuntimeException: Unable to start activity ComponentInfo{com.ex.activity/com.ex.activity.LoginActivity}: android.view.InflateException: Binary XML file line #1: Error inflating class
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.ex.activity/com.ex.activity.L ...
- AndroidManifest.xml file missing 解决方案
如果在导入一个项目到ECLIPSE里时,不要把项目文件放到workspace里面,放到别处再导,否则可能会提示这个错误:AndroidManifest.xml file missing,顺便导入的方式 ...
- XML解析之DOM解析技术案例
Java代码: package com.xushouwei.xml; import java.io.File; import javax.xml.parsers.DocumentBuilder; im ...
随机推荐
- JavaScript对象和数组
1.JavaScript中有两个非常重要的数据类型是对象和数组. 通过"."或者"[]"来访问对象属性 举例:var book = { topic:" ...
- Android中的沉浸式状态栏效果
无意间了解到沉浸式状态栏,感觉贼拉的高大上,于是就是试着去了解一下,就有了这篇文章.下面就来了解一下啥叫沉浸式状态栏.传统的手机状态栏是呈现出黑色条状的,有的和手机主界面有很明显的区别.这一样就在一定 ...
- Oracle创建表空间
1.创建表空间 导出Oracle数据的指令:/orcl file=C:\jds.dmp owner=jds 导入Oracle数据的指令:imp zcl:/orcl file=C:\jds.dmp fu ...
- Hadoop伪分布式集群环境搭建
本教程讲述在单机环境下搭建Hadoop伪分布式集群环境,帮助初学者方便学习Hadoop相关知识. 首先安装Hadoop之前需要准备安装环境. 安装Centos6.5(64位).(操作系统再次不做过多描 ...
- Bluemix中国版体验(二)
从上一篇到现在大概有一个多月了.时隔一个月再登录中国版Bluemix,发现界面竟然更新了,现在的风格和国际版已经基本保持一致!这次我们来体验一下Mobile Service.不过mobile serv ...
- Ubuntu Server(Ubuntu 14.04 LTS 64位)安装libgdiplus2.10.9出错问题记录
首先下载libgdiplus2.10.9安装包 wget http://download.mono-project.com/sources/libgdiplus/libgdiplus-2.10.9.t ...
- Java泛型的历史
为什么Java泛型会有当前的缺陷? 之前的章节里已经说明了Java泛型擦除会导致的问题,C++和C#的泛型都是在运行时存在的,难道Java天然不支持“真正的泛型”吗? 事实上,在Java1.5在200 ...
- 修改linux的hosts 后提示“无效的参数”
碰到个问题,修改linux的主机名问题. vim /etc/hosts 192.168.154.129 129192.168.154.132 132192.168.154.133 133 本地ip是1 ...
- ILMerge合并多个DLL
序言 如果你的项目要提供多个dll给别人用,那么不妨让你的dll合并为一个,让别人看起来简洁,引用起来不会过于繁琐. 本篇比较少,但也算是比较实用吧. 下载微软的辅助工具ILMerge Imerge下 ...
- PHP 高级编程(3/5) - 使用SPL(标准PHP库)实现观察者模式
SPL(标准PHP库 - Standard PHP Library)是PHP5面向对象功能中重要的部分.原文解释是这样的“The Standard PHP Library (SPL) is a col ...