如何使用Visual Basic读取XML文件

2011-08-15 00:51:33刘春雪冮波朱明
黑龙江气象 2011年3期
关键词:佳木斯黑龙江卫星

刘春雪,冮波,朱明

(1.黑龙江省气象信息中心,黑龙江哈尔滨 150030;2.佳木斯卫星地面站,黑龙江佳木斯 154004;3.铁力市气象局,黑龙江铁力 152500)

如何使用Visual Basic读取XML文件

刘春雪1,冮波2,朱明3

(1.黑龙江省气象信息中心,黑龙江哈尔滨 150030;2.佳木斯卫星地面站,黑龙江佳木斯 154004;3.铁力市气象局,黑龙江铁力 152500)

1 引言

XML(Extensible Markup Language)即可扩展标记语言,它与HTML一样,都是SGML(Standard Generalized Markup Language,标准通用标记语言)。XML是Internet环境中跨平台的,依赖于内容的技术,是当前处理结构化文档信息的有力工具。扩展标记语言XML是一种简单的数据存储语言,使用一系列简单的标记描述数据,而这些标记可以用方便的方式建立,虽然XML占用的空间比二进制数据要占用更多的空间,但XML极其简单易于掌握和使用。

XML与Access,Oracle和SQL Server等数据库不同,数据库提供了更强有力的数据存储和分析能力,例如:数据索引、排序、查找、相关一致性等,XML仅仅是展示数据。事实上XML与其他数据表现形式最大的不同是:它极其简单。这是一个看上去有点琐细的优点,但正是这点使XML与众不同。

XML文件是一个树形结构的文件,文件有一个根节点,根节点下面有若干的子节点。每个子节点下面可能还有若干的子节点。

XML语言在气象业务中也正在广泛的使用,佳木斯卫星地面站的轨道报就是XML格式的文件,区域站的站号表是XML格式的,自动土壤水分观测系统的站号表文件也是XML格式的。因此,使用编程语言对XML文件的读取对对工作是一件十分必要的事情。

2 功能实现

佳木斯卫星地面站是我们国家一个重要的卫星地面站,每天接收风云2号下发的卫星资料。每天早晨08:00左右,国家气象卫星中心通过风云2号将轨道报广播下来,轨道报文件的格式是XML的,文件的子节点中里包含着每天佳木斯卫星地面站对应的接收风云2号资料的时间,每天的卫星资料接收工作需要读取这个文件中每个子节点内容,以确定雷达开机的时间。

下面就以如何读取佳木斯卫星地面站的轨道报为例,阐述一下如何通过Visual Basic读取XML文件。

轨道报存储路径及文件名:d:/fy2_trans/IFLAllSat-PassTime20100517.xml

开发语言:Visual Basic

首先运行VisualBasic,新建工程,并且在引用中选中Microsoft XML5.0。添加命令按钮其name属性的值为Command1,添加一个文本框,其name属性的值为Txt_xml,为了将程序读取XML文件之后的值显示出来。

2.1 根节点的读取

定义一个DOMDocument对象,名字为xml,执行xml的Load方法,装入d:/fy2_trans/IFLAllSatPassTime20100517.xml文件。定义一个IXMLDOMElement对象,其名称为root,代表XML文件的根节点,将root对象赋值为xml.documentElement。

Root对象就是XML的根节点,其属性text的值就是根节点及下属所有子节点的text值,通常程序中并不使用根节点的text属性,因为其包含的内容太多;程序通常是使用其某个特定子节点的内容,这样就需要对其子节点进行寻找。

2.2 子节点的读取

root对象的childNodes属性是一个对象,表示其下属的所有子节点,可以通过for each语句来遍历根节点下面的所有子节点。在实际工作中,程序需要读取一个具体子节点的内容,这个子节点相对根节点可能是第一层,也可能是第二层,还有可能是第三层。这时需要通过IXMLDOMNode对象的selectS-ingleNode属性来实现,比如轨道报中经常使用其Num子节点的内容、transferMode子节点的内容,transferMode节点下的BeginTime子节点的内容,对于这样的多层节点内容,要用多层的selectSingleNod来实现。Node.selectSingleNode(“Num”). Text表示Num子节点的内容,Node.selectSingleNode(“Transfer-Mode”).selectSingleNode(“BeginTime”).Text表示transferMode节点下的BeginTime的内容。

遍历了root节点下的各个子节点内容后,可以通过文本框Txt_xml将显示出来,观察一下文本框显示的内容,可以判断程序执行的是否成功。

3 小结

XML语言是一种使用广泛的标记语言,其容易使用的特性使其在未来会用很大应用空间,其在气象方面的应用也越来越多。文章通过详细的说明,介绍如何通过Visual Basic语言读取XML文件的内容。本文源码全部经过调试,读者如果感兴趣,自己做实验调试一下。

1002-252X(2011)03-0043-01

2011-6-6

刘春雪(1969-),女,黑龙江省哈尔滨市人,哈尔滨广播电视大学,大专生,工程师.

猜你喜欢
佳木斯黑龙江卫星
miniSAR遥感卫星
浅谈佳木斯站减速顶的应用、管理及设备的专业化维修
Homeless children in India publish newspaper
佳木斯防爆电机研究所
防爆电机(2020年6期)2020-12-14 07:16:52
佳木斯大學张莉莉水彩作品选登
静止卫星派
科学家(2019年3期)2019-08-18 09:47:43
Write a caption
黑龙江弃风博弈
能源(2016年1期)2016-12-01 05:10:04
Puma" suede shoes with a focus on the Product variables
尤劲东绘画小说《把画送往佳木斯》选页
连环画报(2015年3期)2015-05-14 11:15:05