如何使用VC创建和读取XML文件:详细教程与步骤解析

《如何使用vc创建和读取xml文件.doc》由会员分享,可以在线阅读。更多《如何使用vc创建并读取xml文件.doc(13页珍藏版)》请在智学网搜索。

如何使用VC创建和读取XML文件:详细教程与步骤解析

1.如何使用vc创建和读取xml文件。目前Web上流行的脚本语言是基于HTML的语言结构。 HTML 是一种标记语言,而不是一种编程语言。主要标记是用于显示的,而不是文档内容本身结构的描述。换句话说,机器本身无法解析其内容,因此XML语言出现了。 XML(可扩展标记语言)语言是SGML 语言的子集。它保留了SGML的主要使用功能,同时大大降低了SGML的复杂度。建立XML语言系统的目的是使其不仅能表示文档的内容,还能表示文档的结构,从而能够同时被人类和机器理解。 XML 要求遵守某些严格的标准。 XML 解析器比 HTML 浏览器更好

2. 对语法和结构更加挑剔。 XML 要求创建的网页使用正确的语法和结构,而不是使用浏览器猜测文档中应包含哪些内容来显示 HTML。 XML 允许分析程序正确使用语法和结构。在性能和稳定性方面更容易实现。 XML文档的分析结果每次都是一致的。与 HTML 不同,不同的浏览器可能会以不同的方式分析和显示相同的 HTML。而且由于解析器不需要花时间重建不完整的文档,因此它们可以比 HTML 等价物更有效地执行任务。他们可以全力以赴地根据文档中已经包含的树结构来构建树,而不是根据信息流中的混合结构来显示它。 XML 标准是数据处理的应用程序,而不仅仅是网页。任何类型的应用程序都可以构建在分析程序之上

3. 就构建而言,浏览器只是XML的一小部分。当然,浏览仍然极其重要,因为它为 XML 工作者提供了读取信息的友好工具。但对于较大的项目来说,它只不过是一个展示窗口。由于XML具有严格的语法结构,我们甚至可以使用XML来定义应用层通信协议。例如,互联网开放交易协议是用 XML 定义的。从某种意义上说,我们之前使用 BNF 范式定义的一些协议和格式原则上可以使用 XML 来定义。事实上,如果我们足够耐心,我们可以使用XML来定义C+语言规范。当然,XML允许自由开发大量的HTML样式,但它的规则更加严格。 XML

4.主要有三个元素:DTD(文档类型声明)或XML Schema(XML大纲)、XSL(可扩展样式表语言)和XLink(可扩展链接语言)。 DTD和XML大纲规定了XML文件的逻辑结构,定义了XML文件中的元素、元素属性以及元素与元素属性之间的关系;命名空间(名称域)实现统一的XML文档数据表示和数据交互。一体化; XSL是一种用于指定XML文档的表示样式的语言。它使数据及其表示相互独立。例如,XSL 使 Web 浏览器能够更改文档的表示形式,例如

5、数据显示顺序的改变不需要与服务器通信。通过更改样式表,可以使同一文档变大,或折叠以仅显示外层,或者可以将其格式化以供打印。 XLink将进一步扩展Web上现有的简单链接。 2. XML解析实现说明。当然,理论上,根据XML的格式定义,我们可以自己编写一个XML语法解析器,但实际上微软已经为我们提供了XML语法解析器。如果您安装了For IE5.0或以上版本,那么您实际上已经安装了XML语法解析器。您可以从 Microsoft 站点 () 下载最新的 MSXML SDK 和解析器文件。它是一个名为MSXML.DLL 的动态链接库。最新版本是msxml3。其实它是一个COM对象库,封装了所有的

6. XML解析所需的所有必要对象都有。因为COM是一个独立于语言的可重用对象,以二进制格式出现。因此您可以在您的应用程序中使用任何语言(如VB、VC、DELPHI、C+Builder甚至脚本语言等)来调用它并实现XML文档的解析。下面对XML文档对象模型的介绍是基于微软最新的msxml3。 3. XML文档对象(XML DOM)模型分析 XML DOM对象提供了操作XML文档中存储的信息的标准方法。 DOM 应用程序编程接口 (API) 用作应用程序和 XML 文档之间的桥梁。 DOM 可以被认为是用于连接文档和应用程序的标准结构系统(也可以是脚本语言)。 MSXML 解析器允许您安装

7. 加载并创建文档,从文档中收集错误信息,获取并操作文档中的所有信息和结构,并将文档保存在 XML 文件中。 DOM 为用户提供了加载、访问、操作和序列化 XML 文档的接口。 DOM 提供了存储在内存中的 XML 文档的完整表示,并提供了随机访问整个文档的方法。 DOM 允许应用程序根据 MSXML 解析器提供的逻辑结构来操作 XML 文档中的信息。使用MSXML提供的接口来操作XML。事实上,MSXML解析器根据XML文档生成DOM树结构。它可以读取XML文档并根据XML文档的内容创建节点的逻辑结构。文档本身被认为是包含所有其他节点的节点。 DOM 使用户能够将文档视为结构化信息树,而不是简单地

8.文本流。通过这种方式,应用程序或脚本即使不知道 XML 的语义细节,也可以轻松地操作该结构。 DOM 包含两个关键抽象:树状层次结构和用于表示文档内容和结构的节点集合。树层次结构包含所有这些节点,并且节点本身还可以包含其他节点。这样做的好处是,对于开发者来说,他可以通过这种层次结构找到并修改对应节点的信息。 DOM 将节点视为普通对象,因此可以创建脚本来加载文档,然后遍历所有节点以显示有关感兴趣节点的信息。请注意,节点可以有许多特定类型,例如元素、属性和文本,它们都可以被视为节点。 Microsoft 的MSXML 解析器读取XML 文档并将其内容解析到称为节点(NOD) 的抽象信息容器中。

9.ES)。这些节点表示文档的结构和内容,并允许应用程序在不明确了解 XML 语义的情况下读取和操作文档中的信息。文档解析后,可以随时查看其节点,无需保持一定的顺序。对于开发人员来说,最重要的编程对象是 DOMDocument。 DOMDocument 对象允许您通过公开属性和方法来浏览、查询和修改 XML 文档的内容和结构。每个后续对象都会公开其自己的属性和方法,以便您可以收集有关对象实例的信息并操作对象的值。和结构,并导航到树中的其他对象。 MSXML.DLL中包含的主要COM接口有: (1) DOMDocumentDOMDocument对象是XML DOM的基础,可以使用它公开的属性

10.允许您浏览、查询和修改XML文档的内容和结构的方法。 DOMDocument 表示树的顶部节点。它实现了 DOM 文档的所有基本方法,并提供了额外的成员函数来支持 XSL 和 XSLT。它创建一个文档对象,可以从中获取和创建所有其他对象。 (2) IXMLDOMNode IXMLDOMNode是文档对象模型(DOM)中的基本对象。元素、属性、注释、流程指令和其他文档组件都可以被视为 IXMLDOMNode。事实上,DOMDocument 对象本身也是一个 IXMLDOMNode 对象。 (3)IXMLDOMNodeList IXMLDOMNodeList实际上是节点(Node)对象的集合。

11、点的增删改查可以立即体现到集合中,通过“for.next”结构可以遍历所有节点。 (4)IXMLDOMParseError IXMLDOMParseError接口用于返回解析过程中发生的详细信息,包括错误号、行号、字符位置和文本描述。下面主要描述一个DOMDocument对象的创建过程。这里我们用VC来描述创建文档对象的过程。 HRESULT hr;IXMLDomDocument* pXMLDoc;IXMLDOMNode* pXDN;Hr=CoInitialize(NULL); /COM初始化/获取关于IXMLDOMDocument接口的指针pXMLDOC。小时=钴铬

12. eatInstance(CLSID_DOMDocument,NULL,CLSCTX_INPPROC_SERVER,IID_IXMLDOMDocument,(void*)&pXMLDoc); /获取有关IXMLDOMNode接口的指针pXDN。 hr=pXMLDoc-QueryInterface(IID_IXMLDOMNode,(void*)&pXDN);在使用MSXML解析器的过程中,我们可以使用文档中的createElement方法来创建一个节点来加载和保存XML文件。可以通过 load 或 loadXML 方法从指定的 URL 加载 XML 文档。 Load(LoadXML) 方法采用两个参数:第一个

13、第一个参数xmlSource表示需要解析的文档,第二个参数isSuccessful表示文档是否加载成功。 Save 方法用于将文档保存到指定位置。 Save方法有一个参数destination来指示需要保存的对象的类型。该对象可以是文件、ASP 响应方法、XML 文档对象或支持持久性的客户端对象。下面是一个使用save方法的简单例子(具体流程见)。同时,在解析过程中,我们需要获取和设置解析标志。使用不同的解析标志,我们可以用不同的方式解析 XML 文档。 XML 标准 允许解析器验证或不验证文档,允许不验证文档的解析过程跳过外部

14. 资源开采。此外,您可以设置标志来指示是否要从文档中删除多余的空格。为了达到这个目的,DOMDocument对象公开了以下属性,允许用户在运行时改变解析器的行为:(1)Async(与C+相比,有两个方法,即get_async和put_async)(2)ValidateOnparse (相对于C+,有两个方法,分别是get_validateOnParse和put_validateOnParse) (3)ResolveExternals (相对于C+,有两个方法,分别为get_ResolveExternals和put_ResolveExternals)(4)PersercveWhiteS

15.pace(相对于C+来说,有两个方法,分别是get_PersercveWhiteSpace和put_PersercveWhiteSpace)。每个属性都可以接受或返回布尔值。默认情况下,anync、validateOnParse、resolveExternals的值为TRUE,persistWhiteSpace的值与XML文档的设置有关。如果在 XML 文档中设置了 xml:space 属性,则该值为 FALSE。同时,在文档解析过程中还可以收集一些与文档信息相关的信息。事实上,在文档解析过程中可以得到以下信息: (1)doctype(文档类型):它实际上是一个DTD文件,用于定义文档格式。如果 XML 文档没有关联的 DTD 文档,则返回 NULL。 (2)Implementation:表示文档的实现,实际上是用来表示当前文档支持的XML版本。 (3)parseError(解析错误):解析过程中发生的最后一个错误。 (4)readyState(状态信息):表示XML文档的状态信息。就绪状态是为了

你可能想看:
« 上一篇
下一篇 »

相关推荐

FreeBasic:强大免费开源的64位basic编译器及应用优势

2025年05月10日

84阅读

脊柱侧弯矫正方法大盘点:运动康复、支具矫正等多种方式

2025年05月09日

88阅读

如何在winForm标题栏去掉标题文字且任务栏图标正常显示

2025年05月09日

88阅读

十一黄金周促销广告词大全,国庆购物狂欢等你来

2025年05月09日

79阅读

关闭快速编辑模式及插入模式,设置控制台指定文字颜色举例

2025年05月09日

65阅读

黄金搭档低糖高钙饮品包装及成分功效全解析,适合人群要知晓

2025年05月09日

92阅读