在Visual Basic 6.0中操纵XML文件

    技术2022-05-11  48

    扩展标记语言 XML是一种简单的数据存储语言,使用一系列简单的标记描述数据,而这些标记可以用方便的方式建立,虽然 XML占用的空间比二进制数据要占用更多的空间,但 XML极其简单易于掌握和使用。    XML与Access,Oracle和SQL Server等数据库不同,数据库提供了更强有力的数据存储和分析能力,例如:数据索引、排序、查找、相关一致性等, XML仅仅是展示数据。事实上 XML与其他数据表现形式最大的不同是:他极其简单。这是一个看上去有点琐细的优点,但正是这点使 XML与众不同。    XML的简单使其易于在任何应用程序中读写数据,这使 XML很快成为数据交换的唯一公共语言,虽然不同的应用软件也支持其它的数据交换格式,但不久之后他们都将支持 XML,那就意味着程序可以更容易的与Windows、Mac OS, Linux以及其他平台下产生的信息结合,然后可以很容易加载 XML数据到程序中并分析他,并以 XML格式输出结果。    XML的优点   我们谈到 XML长于在不同的应用程序之间交换数据, XML文件也便于构建小的数据库,不久以前,软件都使用INI文件存储配置信息、用户参数以及其他信息,后来微软引入了系统注册表,接作微软告诉我们不应该再使用INI文件了,从那时起Visual Basic对INI文件的支持被削弱了。但不幸的是注册表有几个致命的缺点:不是简单的文本文件,难于读写、可能会变得庞大和缓慢、如果注册表不知何故出现问题,将有可能造成系统死机。   将配置信息放在 XML文件中可以避免这些问题,甚至可以将 XML文件设置为一个共享文件,这样在不同的计算机上的用户就可以共享数据,这是注册表所不能比拟的。   在被称为下一代ASP的ASP.NET中可以在WEB页中直接使用 XML,你可以使用数据绑定控件直接绑定数据并自动显示。   当然也可以不选择 XML,使用文本文件、注册表、数据库都可以完成 XML所能完成的任务, XML只是你在数据存储和恢复的另一种工具而已。    XML语法简介    XML的语法非常的简单, XML文档由节点组成,使用打开和关闭节点描述标记,在格式上与HTML标记非常相似,它们之间最大的不同是: XML中可以自由定义标记名。比如下面的标记就描述了一个电话号码:   <Phone>987-654-3210</Phone>   而且不用声明标记名就可以使用。   开始和结束标记必须相同, XML是识别大小写的,所以标记的大小写也必须相同。比如上面的例子中以<Phone>标记开始就必须以</Phone>标记结束,而不能是</phone>或</PHONE>   节点标记中可以包含属性,比如下面的代码中Phone节点包含属性Type,其值为WorkFax:   <Phone Type="WorkFax">987-654-3210<Phone>   如果不愿意在节点中包含一个值,那么可以不需要结束标记,可以用在开始标记的后面加一个斜线来结束节点,在下面的例子中,Phone标记的Number属性就存储了一个电话号码,所以就不需要一个结束标记:   <Phone Type="WorkFax" Number="987-654-3210" />    XML文档的结构是一个树形等级结构。文档必须有一个唯一的根结点,根节点包含所有其它节点。下面我们举一个较为完整的例子: <Addresses> <Entry Type="Personal">  <FirstName>Andy</FirstName>  <LastName>Fickle</LastName>  <Street>1234 Programmer Place</Street>  <City>Bugsville</City>  <State>CO</State>  <Zip>82379</Zip>  <Phone Type="Home">354-493-9489</Phone> </Entry> <Entry Type="Work">  <FirstName>Betty</FirstName>  <LastName>Masterson</LastName>  <Phone Type="Work">937-878-4958</Phone>  <Phone Type="WorkFax">937-878-4900</Phone> </Entry> ...</Addresses>   注意相似的节点不需要包含相同的信息,例如第一个Entry节点包含了地址信息和家庭电话号码,第二个Entry节点包含了Work和WorkFax电话号码,而没有包含第一个Entry节点包含的信息。    XML工具   如前面的例子显示, XML语法是如此的简单以至于你可以在很短的时间作一个 XML解析器,幸运的是你不必这样做,因为 XML工具可以运行在各种平台上,包括可以安装了Visual Basic的Windows。   正是这些L工具而不是 XML本身使 XML变得更强大和复杂。不同的解析器使你可以某一时刻加载整个 XML文档或只加载某个节点,与此相反, XML Writer 可以同时创建一个 XML文档和节点。   DOM解析器使我们能够很方便的加载、复制、排序、修改和存储 XML文件,遍历节点获得名称或属性,并给结果排序。虽然他们的功能没有真正的关系数据库强大,但DOM的这些特点依然非常有用。   XSD可以定义 XML文档的格式,XSL扩展样式单定义了怎样将 XML文档转换成其他可以在WEB浏览器中浏览的文件格式,比如HTML文件。   这些工具实际上比 XML本身更复杂,所以所有讲解 XML的书籍都花了很大的篇幅解释这些 XML工具。但这超出了本文的范围,有兴趣的读者可以参考有关资料。   Visual Basic.Net提供了使用 XML、XSL以及其他 XML工具的完整工具。但不用等待 VB.NET,微软 XML核心服务(MS XML)版本4.0提供了从Visual Basic6.0加载和存储 XML文档的工具。   在msdn.microsoft.com/xml/default.asp中下载最新版本的MS XML,并安装在计算机上。在Visual Basic 6.0中使用Microsoft XML V4.0象引用其他对象一样,首先在工程菜单中选择引用菜单项,选择Microsoft V4.0,单击OK,一切完成后就现在就可以在 VB应用程序中添加 XML对象了。  

    最新回复(0)