xml文件介绍及使用
我们经常看到 xml 文件,只是很少去使用,顼名思义,xml 就是可扩展的标记语言,它的 发展如下图所示:
xml 和 html 的比较:
比较内容 可扩展性 签
HTML 不允许用户定义自己的扩展标 签
XML 允许用户定义自己的扩展标
结构描述
不支持深层次的嵌套表达
支持深层次的嵌套表达,适 合表示结构复杂的文档数据 结构清晰,便于阅读、维护 内容描述和表现形式相分离
可读性及可维护性 数据和显示的关系
难以阅读、维护 内容描述和表现形式合为一体
xml 比 html 强大,但是使用更加规范和严格: (1).XML 是区分大小写的; (2).所有元素的起始和结束标注必须成对出现,且要正确嵌套; (3).如果使 XML 说明,则它必须是 XML 文档的第一行:
(4).元素属性必须用引号引起来,单、双引号都可以,但必须成对出现。如:
&: 表示&字符 &apos: 表示’字符 ": 表示”字符 我们也可用 ENTITY 自定义实体:
这样我们可用&linux;来调用。 (7).XML 文档内容中的空格是有意义的,在转换后会保留。 (8).元素以<开始并以/>结束,如
看一段简单的 xml 代码:
? ? ? ? ? ? ? ? ? ?? ?? ?? ?? ??
了解元素,属性和实体的概念: 元素就是标记如 classes 元素;属性就是附加信息如 name 元素的 englishname 属性;实 体就是用来替代 xml 中的字符串,如 当使 用 https://www.360docs.net/doc/a24181726.html, 就可以使用&website 跨界方式! DTD 的“Document Type Definition“介绍:
规范 XML 文件的格式,如:
?? ??
?? ?? ?? ??
DTD 其实就是一个戒是一些用 XML 书写的文件。 文档类型声明中的每一项都是元素声明,定义了每个元素的约束。元素声明的格式为: 内容包括: 1. #PCDATA,规定元素只包含已析的字符数据。 2. 子元素,可指明元素的子元素。也可用逗号为分隔符,指明多个子元素。并且子元素出 现的次序必须按定义时的顺序。 3. 子元素的个数,我们可通过正则表达式来规定子元素的个数。①?,允许零个戒一个该元 素 ②*,允许零个戒多个该元素 ③+,允许一个戒多个该元素 4. 可选项(|),选项是一个参数列表,每个参数间用“|”分隔,代表能且只能选一个子元素。 5. 小括号,可用小括号把选项括起来,以表达更丰富的意思,如我们想表示 choice 元素必 须包含一个 good 子元素,并且必须包含 ok 子元素戒 bad 子元素的一个。 6. 混合内容,在一些文档中,一个元素可能既包含子元素,也包含字符串,这些内容叫混 合内容。 7. 空元素,某些元素丌用包含任何内容,称之为空元素。写成以/>结束的独立标签。 8. ANY,允许元素内包含任意内容。该选项在 dtd 测试时很有用,在生产系统中尽量丌要 使用。
一个有效的 XML 文档,必须对元素的属性进行声明。使用 ATTLIST 声明来完成,一个 ATTLIST 可以为一个元素类型声明多个属性。 有效文档中使用的每个元素都必须在文档的 DTD 中用元素声明进行声明。element_name 可是任何合法的 XML 名称,content_model(内容模型)指定元素可以戒必须包含的子元素 以及子元素的顺序。 重要提示: 1.xml 中可以显示样式,需要引入 css 文件 2.如上 xml 文件,xml 只有一个根元素也就是第一个元素! 3.用于显示特殊字符 4.注释方式
欢迎转载! 原文地址: https://www.360docs.net/doc/a24181726.html,/dhtml/xml.html ,转载请注明地址,谢谢!
如何用vc创建和读取xml文件
如何用vc创建和读取xml文件 当前Web上流行的剧本语言是以HTML为主的语言结构,HTML是一种标记语言,而不是一种编程语言,主要的标记是针对显示,而不是针对文档内容本身结构的描述的。也就是说,机器本身是不能够解析它的内容的,所以就出现了XML语言。XML (eXtensible Markup Language)语言是SGML语言的子集,它保留了SGML主要的使用功能,同时大大缩减了SGML的复杂性。XML语言系统建立的目的就是使它不仅能够表示文档的内容,而且可以表示文档的结构,这样在同时能够被人类理解的同时,也能够被机器所理解。XML要求遵循一定的严格的标准。XML分析程序比HTML浏览器更加要挑剔语法和结构,XML要求正在创建的网页正确的使用语法和结构,而不是象HTML一样,通过浏览器推测文档中应该是什么东西来实现HTML的显示,XML使得分析程序不论在性能还是稳定性方面都更容易实现。XML文档每次的分析结果都是一致的,不象HTML,不同的浏览器可能对同一个HTML作出不同的分析和显示。 同时因为分析程序不需要花时间重建不完整的文档,所以它们能比同类HTML能更有效地执行其任务。它们能全力以赴地根据已经包含在文档中的那个树结构建造出相应的树来,而不用在信息流中的混合结构的基础上进行显示。XML标准是对数据的处理应用,而不是只针对Web网页的。任何类型的应用都可以在分析程序的上面进行建造,浏览器只是XML的一个小的组成部分。当然,浏览仍旧极其重要,因为它为XML工作人员提供用于阅读信息的友好工具。但对更大的项目来说它就不过是一个显示窗口。因为XML具有严格的语法结构,所以我们甚至可以用XML来定义一个应用层的通讯协议,比如互联网开放贸易协议(Internet Open Trading Protocol)就是用XML来定义的。从某种意义上说,以前我们用BNF范式定义的一些协议和格式从原则上说都可以用XML来定义。实际上,如果我们有足够的耐心,我们完全可以用XML来定义一个C++语言的规范。 当然,XML允许大量HTML样式的形式自由的开发,但是它对规则的要求更加严格。XML主要有三个要素:DTD(Document Type Declaration——文档类型声明)或XML Schema(XML大纲)、XSL(eXtensible Stylesheet Language——可扩展样式语言)和XLink(eXtensible Link Language——可扩展链接语言)。DTD和XML大纲规定了XML文件的逻辑结构,定义了XML文件中的元素、元素的属性以及元素和元素的属性之间的关系;Namespace(名域)实现统一的XML文档数据表示以及数据的相互集成;XSL是用于规定XML文档呈现样式的语言,它使得数据与其表现形式相互独立,比如XSL能使Web浏览器改变文档的表示法,例如数据的显示顺序的变化,不需要再与服务器进行通讯。通过改变样式表,同一个文档可以显示得更大,或者经过折叠只显示外面得一层,或者可以变为打印得格式。而XLink将进一步扩展目前Web上已有的简单链接。 二、实现XML解析的说明 当然,从理论上说,根据XML的格式定义,我们可以自己编写一个XML的语法分析器,但是实际上微软已经给我们提供了一个XML语法解析器,如果你安装了IE5.0以上版本的话,实际上你就已经安装了XML语法解析器。可以从微软站点(https://www.360docs.net/doc/a24181726.html,)下载最新的MSXML的SDK和Parser文件。它是一个叫做MSXML.DLL的动态链接库,最新版本为msxml3,实际上它是一个COM对象库,里面封装了所有进行XML解析所需要的所有必要的对象。因为COM是一种以二进制格式出现的和语言无关的可重用对象。所以你可以用任何语言(比如VB,VC,DELPHI,C++ Builder甚至是剧本语言等等)对它进行调用,
PBDOM操作XML文档轻松入门_PowerBuilder
PBDOM操作XML文档轻松入门 2008-03-06 15:13 本文对PBDOM技术进行相关介绍,但并不涉及XML的基础知识,建议阅读者对下述相关术语有一定了解: Document(文档), DTD(文档类型定义), schema (大纲),Element(元素), attribute(属性), processing instruction (处理命令), entity(实体)。 本文主要包括以下内容: 1、为什么要使用PBDOM以及怎样创建PBDOM 2、PBDOM主要用于那些地方 3、如何使用PBDOM编程 4、PBDOM和其他XML解析(parser)技术的比较 一、什么是DOM ◆文档对象模型(Document Object Model) 1、作为一项W3C规范,XML DOM存在目的是为不同类型的应用程序提供一个标准的编程接口,它被设计可以跨平台、跨语言使用。 2、我们可以利用XML DOM创建XML文档并操纵其结构,增加、修改、删除元素。 3、程序中调用XML解析器载入XML文档到内存中。当文档被载入后,可以通过进入DOM检索和操作相关信息。 4、DOM 保存了XML文档树,文档(document)元素位于整棵树的最顶层。该元素可以有一到多个子节点来保存树的结构。 可以参阅以下网站: https://www.360docs.net/doc/a24181726.html,/dom/ 来了解更多的关于XML Document Object Model的内容。 二、什么时候应该使用DOM工具 ◆当你需要做下列事情的时候,你应该想到XML DOM的 1、在一个或者多个XML文档之间移动元素 2、创建新的元素并且在XML文档的任意位置插入 3、操作元素并重新插入其到XML文档其他位置 4、导入内嵌数据结构 & . pb9中,数据窗口现在可以通过XML导出内嵌数据结构(nested data structures). 三、什么是PBDOM ◆PowerBuilder 文档结构模型(PowerBuilder Document Object Model)
XML文件基本操作
XML:Extensible Markup Language(可扩展标记语言)的缩写,是用来定义其它语言的一种元语言,其前身是SGML(Standard Generalized Markup Language,标准通用标记语言)。它没有标签集(tag set),也没有语法规则(grammatical rule),但是它有句法规则(syntax rule)。 任何XML文档对任何类型的应用以及正确的解析都必须是良构的(well-formed),即每一个打开的标签都必须有匹配的结束标签,不得 含有次序颠倒的标签,并且在语句构成上应符合技术规范的要求。XML文档可以是有效的(valid),但并非一定要求有效。所谓有效文档是指其符合其文档 类型定义(DTD)的文档。如果一个文档符合一个模式(schema)的规定,那么这个文档是"模式有效的(schema valid)"。 XML文件在存储、交换和传输数据信息上有着很方便处理,那么今天这篇文章主要讲一下用C#如何实现对XML文件的基本操作, 如:创建xml文件,增、删、改、查xml的节点信息。所使用的方法很基础,方便易懂(用于自己的学习和记忆只需,同时也希望能够给你带来一些帮助, 如有不合适的地方欢迎大家批评指正)。 本文的主要模块为: ①:生成xml文件 ②:遍历xml文件的节点信息 ③:修改xml文件的节点信息 ④:向xml文件添加节点信息 ⑤:删除指定xml文件的节点信息假设我们需要设计出这样的一个xml文件来存储相应的信息,如下所示:
XMLDocument对xml文件的增删改查操作
从结构上讲.XmlElement是XmlNode 派生类. 所以两者比较没什么意义. XmlNode 为抽像类, 不能直接实例化. 已知有一个xml文件(bookstore.xml)如下:
C#程序:如何创建xml文件以及xml文件的增、删、改、查
C#程序:如何创建xml文件以及xml文件的增、删、改、查 其实今天的这篇博文,是对请几天发表的博文的一个总结,只是想把xml文件的增删改查结合起来,这样更容易让初学的朋友理解,废话也不多说了,开始吧! 下面是我把我在vs环境下写的代码ctrl+V然后ctrl+V了的,课根据自己的需要执行相应的方法 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Xml; using System.IO; namespace WriteXml { class Program { static void Main(string[] args) { //createXml();//创建文件和添加基本数据,便于之后操作实验 //addItem();//追加数据 readtext();//读取数据 //updatexml();//更新数据 //delnode();//删除数据 } private static void createXml() { XmlTextWriter writer = new XmlTextWriter("titles.xml", null); //使用自动缩进便于阅读 writer.Formatting = Formatting.Indented; //写入根元素 writer.WriteStartElement("items"); writer.WriteStartElement("item"); //写入属性及属性的名字 writer.WriteAttributeString("类别", "文学"); writer.WriteAttributeString("品质", "优"); //加入子元素 writer.WriteElementString("title", "毛著"); writer.WriteElementString("author", "毛泽东"); writer.WriteElementString("price", "10.0"); //关闭根元素,并书写结束标签 writer.WriteEndElement(); writer.WriteEndElement(); //将XML写入文件并且关闭XmlTextWriter writer.Close();
VB NET与XML之间的操作
Imports System.Xml'声明XML Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object,ByVal e As System.EventArgs)Handles Button1.Click Dim dataset As New DataSet'声明一个dataset dataset.ReadXml("f:¥aaa.xml")'读xml文件,并把xml文件放入到datset的第一个表中 Dim table As DataTable=dataset.Tables(0)'读出该表 Dim view As DataView=New DataView(table)'自定义视图 DataGridView1.DataSource=view'绑定数据源 End Sub Public Sub appear()'同上 Dim dataset As New DataSet dataset.ReadXml("f:¥aaa.xml") Dim table As DataTable=dataset.Tables(0) Dim view As DataView=New DataView(table) DataGridView2.DataSource=view End Sub Private Sub Button2_Click(ByVal sender As System.Object,ByVal e As System.EventArgs)Handles Button2.Click Dim xmlDou As XmlDocument=New XmlDocument()'声明一个xml文档对象 xmlDou.Load("f:¥aaa.xml")'将特定的xml文档写入xmldoucument Dim xmlnode As XmlNode=xmlDou.SelectSingleNode("bookstore")'声明一个根标记,bookstore为根标记 Dim xml1As XmlElement=xmlDou.CreateElement("book")'声明一个xml 的节点 xml1.SetAttribute("genre","李簪红")'节点的属性 xml1.SetAttribute("ISBN","2-3621-4")'同上 Dim xml1_title As XmlElement=xmlDou.CreateElement("title")'声明一个xml的节点 xml1_title.InnerText="C#程序设计入门与技巧"'定义节点的文档 xml1.AppendChild(xml1_title)'向总节点尾部添加节点 Dim xml1_author As XmlElement=xmlDou.CreateElement("author")'同上xml1_author.InnerText="张永斌"
xml练习题
XML练习题 一、填空题 1.定义电子文档结构和描述其内容的国际标准语言是,它是所有电子文档标记语言的起源。 2.能够描述其他语言及其语法和词汇表的语言称为。 3.XML文档的声明中的编码方式常用的有和GB2312。 4.HTML是用所定义的,即是SGML的一个应用。 5.XML元素由、结束标记和两者之间的内容三个部分组成。 7.XML属性的声明位置是。 8.XML文档中用来包含文本的组件是。 9.是解决XML元素多义性和名字冲突问题的方案。 10.XML是的一个子集。 11. 当XML文档符合时,称该文档是“良好格式的”(Well-formed)。 12.每个XML文档都分为两个部分:和。 13.<?xml version=”1.0”encoding=”GB2312” ?>就是一个。 14.XML 文档内容的主体部分,一般由、、、注释和内容组成。 15.XML文档中一共有四类元素,分别为,仅含有文本的,含子元素、文本或混合元素的元素。 16. XML Schema两种重要的模型是Microsoft XML Schema和。 17. Microsoft XML Schema 和W3C XML Schema 分别使用AttributeType 和声明XML文档属性。 18. 命名空间的声明一般放置在,其使用语法如下所示: xmlns:prefix=“URI” 19. XML模式负责定义和描述XML文档的结构和内容。定义XML文档中存在哪些元素和元素之间的关系,还可以定义元素和属性的数据类型。 20.所有Schema文档都必须要使用作为其根元素。 21.声明用户自定义的简单数据类型使用关键字。 22.声明复杂数据类型使用关键字。 23.Schema文档中,用于声明元素的element元素的属性minOccurs的作用是。 24. XSLT是一种将XML文档转换成其他形式文档的技术。现在常用的两种技术分别是: 和。 25. XSLT处理过程涉及4个要素:XSLT处理器、输入XML文档、输入XSLT文档和输出文档。 26. 每一个XSLT样式表中都有一个应用到根节点的模板。 27. 一个格式良好XSL文件是由标记和HTML标记组成。 28.模板是的集合,都使用定义XML数据显示的样式。 29.使用标记可以对多个同名的节点访问,并且该节点可以设置在显示数据的时候,可以按升序或降序显示。 30.可以在XSL文件中使用
使用XMLDocument操作xml文件
在C#.net中如何操作XML 需要添加的命名空间: using System.Xml; 几个公共对象: XmlDocument xmldoc ; XmlNode xmlnode ; XmlElement xmlelem ; 第一步: //创建到服务器同名目录下的xml文件: XmlDocument xdoc = new XmlDocument(); //加入XML的声明部分 XmlDeclaration xdecl = xdoc.CreateXmlDeclaration("1.0", "gb2312", null); xdoc.AppendChild(xdecl); //加入一根元素
C#操作xml:增,删,改,查
c#操作xml https://www.360docs.net/doc/a24181726.html,/e/404232246.htm 同样是增,删,改,查四种操作。现在我们就详细介绍一下增和删两种操作。看下面的一个xml示例:
c++操作xml
c++操作xml C++标准库中没有操作XML的方法,用C++操作XML文件必须熟悉一种函数库,选用LIBXML2 Libxml2是一个C语言的XML程序库,可以简单方便的提供对XML文档的各种操作,并且支持XPATH 查询,以及部分的支持XSLT转换等功能。 Libxml2的下载地址是https://www.360docs.net/doc/a24181726.html,/ windows版本的的下载地址是https://www.360docs.net/doc/a24181726.html,/libxml.en.html libxml2库依赖iconv和zlib库,所以需要下载三个 成功版本libxml2-2.6.30.win32.zip、zlib-1.2.3.win32.zip和iconv-1.9.2.win32.zip。 解压,在系统变量path中加上iconv-1.9.2.win32\bin;zlib-1.2.3.win32\bin;libxml2-2.6.30.win32\bin这三个地址。或者把其中的三个dll到拷贝到system32目录中 编译链接基于libxml2的程序,在VC环境中设置lib和include路径,并在link设置中添加libxml2.lib和iconv.lib. vc:项目->属性->c/c++->常规->附加包含目录,将三个文件夹的include下的.h头文件包含进工程 项目->属性->链接器->常规->附加库目录,将三个文件夹的bin下的.lib库文件包含进工程 注意,这只是将目录包含进工程,需要使用时需在代码中写 #include
xml文件介绍及使用
我们经常看到 xml 文件,只是很少去使用,顼名思义,xml 就是可扩展的标记语言,它的 发展如下图所示:
xml 和 html 的比较:
比较内容 可扩展性 签
HTML 不允许用户定义自己的扩展标 签
XML 允许用户定义自己的扩展标
结构描述
不支持深层次的嵌套表达
支持深层次的嵌套表达,适 合表示结构复杂的文档数据 结构清晰,便于阅读、维护 内容描述和表现形式相分离
可读性及可维护性 数据和显示的关系
难以阅读、维护 内容描述和表现形式合为一体
xml 比 html 强大,但是使用更加规范和严格: (1).XML 是区分大小写的; (2).所有元素的起始和结束标注必须成对出现,且要正确嵌套; (3).如果使 XML 说明,则它必须是 XML 文档的第一行:
(4).元素属性必须用引号引起来,单、双引号都可以,但必须成对出现。如:
&: 表示&字符 &apos: 表示’字符 ": 表示”字符 我们也可用 ENTITY 自定义实体:
XML操作 文档
<书库> <书> <书名>Java编程入门书名> <作者>张三作者> <出版社>电子出版社出版社> <价格>35.0价格> <出版日期>2002-10-07出版日期> 书> <书> <书名>XML在Java中的应用书名> <作者>李四作者> <出版社>希望出版社出版社> <价格>92.0价格> <出版日期>2002-10-07出版日期> 书> 书库> 下面是操作XML文件的Bean: package xml; /** * XML的读写操作Bean */ import java.io.*; import java.util.*; import org.jdom.*; import org.jdom.output.*; import org.jdom.input.*; import javax.servlet.*; import javax.servlet.http.*; public class XmlBean{ private String bookname,author,pub,price,pubdate; public String getbookname() { return bookname;} public String getauthor() { return author;} public String getpub() { return pub;} public String getprice() { return price;} public String getpubdate() { return pubdate;} public void setbookname(String bookname) { this.bookname =bookname ; } public void setauthor(String author) { this.author =author; } public void setpub(String pub) { this.pub =pub ; } public void setprice(String price) { this.price =price ; } public void setpubdate(String pubdate) { this.pubdate =pubdate ; } public XmlBean(){} /**
https://www.360docs.net/doc/a24181726.html,操作XML
一、简单介绍 using System.Xml; //初始化一个xml实例 XmlDocument xml=new XmlDocument(); //导入指定xml文件 xml.Load(path); xml.Load(HttpContext.Current.Server.MapPath("~/file/bookstore.xml")); //指定一个节点 XmlNode root=xml.SelectSingleNode("/root"); //获取节点下所有直接子节点 XmlNodeList childlist=root.ChildNodes; //判断该节点下是否有子节点 root.HasChildNodes; //获取同名同级节点集合 XmlNodeList nodelist=xml.SelectNodes("/Root/News"); //生成一个新节点 XmlElement node=xml.CreateElement("News"); //将节点加到指定节点下,作为其子节点 root.AppendChild(node); //将节点加到指定节点下某个子节点前 root.InsertBefore(node,root.ChildeNodes[i]); //为指定节点的新建属性并赋值 node.SetAttribute("id","11111"); //为指定节点添加子节点 root.AppendChild(node); //获取指定节点的指定属性值 string id=node.Attributes["id"].Value; //获取指定节点中的文本 string content=node.InnerText; //保存XML文件 string path=Server.MapPath("~/file/bookstore.xml"); xml.Save(path); //or
XML文件读取的资料
XML文档对象模型也就是(DOM) 就像层次结构的树,主要用于在内存中表示XML文档 1)DOM树定义了XML文档的逻辑结构,给出了一种应用程序访问和处理XML文档的方法。 2)在DOM树中,有一个根节点,所有其他的节点都是根节点的后代。 3) 在应用过程中,基于DOM的XML分析器将一个XML文档转换成一棵DOM树,应用程序通过对DOM树的操作,来实现对XML文档数据的操作。 三、XML文档对象(XML DOM)模型分析 XML DOM对象提供了一个标准的方法来操作存储在XML文档中的信息,DOM应用编程接口(API)用来作为应用程序和XML文档之间的桥梁。 DOM可以认为是一个标准的结构体系用来连接文档和应用程序(也可以是剧本语言)。MSXML解析器允许你装载和创建一个文档,收集文档的错误信息,得到和操作文档中的所有的信息和结构,并把文档保存在一个XML 文件中。DOM提供给用户一个接口来装载、到达和操作并序列化XML文档。DOM提供了对存储在内存中的XML文档的一个完全的表示,提供了可以随机访问整个文档的方法。DOM允许应用程序根据MSXML解析器提供的逻辑结构来操作XML文档中的信息。利用MSXML所提供的接口来操作XML。 实际上MSXML解析器根据XML文档生成一个DOM树结构,它能够读XML 文档并根据XML文档内容创建一个节点的逻辑结构,文档本身被认为是一个包含了所有其他节点的节点。 DOM使用户能够把文档看成是一个有结构的信息树,而不是简单的文本流。这样即使不知道XML的语义细节,应用程序或者是脚本也能够方便地操作该结构。DOM包含两个关键的抽象:一个树状的层次、另一个是用来表示文档内容和结构的节点集合。树状层次包括了所有这些节点,节点本身也可以包含其他的节点。这样的好处是对于开发人员来说,他可以通过这个层次结构来找到并修改相应的某一个节点的信息。DOM把节点看成是一个通常的对象,这样就有可能创建一个剧本来装载一个文档,然后遍历所有的节点,显示感兴趣的节点的信息。注意节点可以有很多中具体的类型,比如元素、属性和文本都可以认为是一个节点。 微软的MSXML解析器读一个XML文档,然后把它的内容解析到一个抽象的信息容器中称为节点(NODES)。这些节点代表文档的结构和内容,并允许应用程序来读和操作文档中的信息而不需要显示知道的XML的语义。在一个文档被解析以后,它的节点能够在任何时候被浏览而不需要保持一定的顺序。 对开发人员来说,最重要的编程对象是DOMDocument。DOMDocument对象通过暴露属性和方法来允许浏览、查询和修改XML文档的内容和结构,每一个接下来的对象暴露自己的属性和方法,这样就能够收集关于对象实
C#对XML进行增删改查操作(可封装)(精)
xml文件格式 view plaincopy to clipboardprint? 熊猫 123456 panda@https://www.360docs.net/doc/a24181726.html, asfdsafasdfasdfsad 我是内容 2009-10-1 熊猫 123456 panda@https://www.360docs.net/doc/a24181726.html, asfdsafasdfasdfsad 我是内容 2009-10-1 增加>>>> view plaincopy to clipboardprint? XmlDocument xmld = new XmlDocument(; xmld.Load(Server.MapPath("App_Code/Message.xml";//加载xml文件XmlNode root = xmld.SelectSingleNode("messageList";//查找messageList节点
int i = xmld.SelectSingleNode("messageList".ChildNodes.Count + 1; XmlElement xml0 = xmld.CreateElement("message"; xml0.SetAttribute("id", i.ToString(; XmlElement xml1 = xmld.CreateElement("Name";//创建一个Name节点xml1.InnerText = this.txtName.Value.Trim(; xml0.AppendChild(xml1;//添加 XmlElement xml2 = xmld.CreateElement("QQ";//创建QQ节点 xml2.InnerText = this.txtQQ.Value.Trim(; xml0.AppendChild(xml2;//添加 XmlElement xml3 = xmld.CreateElement("Email";//创建一个Email节点xml3.InnerText = this.txtEmail.Value.Trim(; xml0.AppendChild(xml3;//添加 XmlElement xml4 = xmld.CreateElement("Content";//创建一个Content节点xml4.InnerText = this.txtContent.Value; xml0.AppendChild(xml4;//添加 XmlElement xml5 = xmld.CreateElement("Time";//创建一个Time节点 xml5.InnerText = DateTime.Now.ToString("yyyy-MM-dd"; xml0.AppendChild(xml5;//添加 root.AppendChild(xml0; xmld.Save(Server.MapPath("App_Code/Message.xml";
VB6.0操作XML文件
VB6.0操作XML文件 XML文件如下:
Set xn = XMLDoc.selectSingleNode("testlist") '以下为读取xml文件内容,这里用ListView控件显示 Set xlst = xn.childNodes ListView1.ListItems.Clear For Each xnf In xlst Set xe = xnf Set xlst1 = xe.childNodes With ListView1.ListItems.Add(, , xlst1.Item(0).Text) .SubItems(1) = xlst1.Item(1).Text .SubItems(2) = xlst1.Item(2).Text End With Next '以下是插入一个节点(这里插入一个id=3,name=飞翔,time=date 的节点) Dim XMLId As IXMLDOMElement Dim XMLName As IXMLDOMElement Dim XMLTime As IXMLDOMElement Dim returnValue As IXMLDOMNode Set xe = XMLDoc.createElement("test") '创建一个
XML读写操作
XML读写操作小结 我们知道对XML的操作有两种方法,即DOM方式和SAX方式。二者主要区别是:DOM实现方式操作非常简单,但不适合处理过大文件;而SAX实现方式是能处理很大的XML文件,但是需要开发者写一些复杂的代码。Qt提供了对应于这两种用于读取、操作和编写XML的实现类,分别是QDomDocument类和QXmlStreamReader类,由于在项目中涉及的文件不大,因此我们选用QDomDocument类来处理。 项目中涉及便签的增删改查,对应于XML文件中相应标记的读、写和修改,下面分别介绍: 1. 创建节点,将其写入XML文件,主要操作包括: 1).创建根节点:QDomElement root = doc.documentElement("rootName " ); 2).创建元素节点:QDomElement element = doc.createElement("nodeName"); 3).添加元素节点到根节点:root. appendChild(element); 4).创建元素文本:QDomText nodeText=doc.createTextNode("text"); 5).添加元素文本到元素节点:element. appendChild(nodeText); 在本项目中,假设便签的属性有序号、名字、内容、字体、字号、颜色、粗细、斜体、下划线这几项,则在文件中添加一个便签节点的操作如下: QDomDocument doc; instruction = doc.createProcessingInstruction("xml","version=\"1.0\" encoding=\"UTF-8\""); doc.appendChild(instruction); QDomElement root = doc.createElement("Notes"); doc.appendChild(root); QDomElement note = doc.createElement("note"); root.appendChild(note); QDomElement no = doc.createElement("no"); note.appendChild(no); ... ... QDomText no_text = doc.createTextNode("001"); ... ... 则得到一个便签节点,将其保存到test.xml文件中,代码如下: QFile file("test.xml"); if (!file.open(QIODevice::WriteOnly | QIODevice::Truncate |QIODevice::Text)) return ; QTextStream out(&file); out.setCodec("UTF-8"); doc.save(out,4,QDomNode::EncodingFromTextStream); file.close(); 则test.xml文件: