近期,在医院HIS系统开发中,要用到PB(PowerBuilder)程序解析XML格式字符串,参考网上提供的方法,结合自己的实践,整理一下,供大家参考学习。

解析XML文件要使用到PBDOM_Builder、PBDOM_Document、PBDOM_Element等类,这些类无法直接使用,需要将PowerBuilder安装目录下的pbdom90.pbd文件导入PB项目工程中。

1. 导入pbdom90.pbd文件

将pbdom90.pbd拷贝到工程目录下,鼠标右击工程,选择properties,弹出如下界面,选择browse,选中pbdom90.pbd文件,确定即可完成导入。

PB解析XML字符串的实践方法

2.基于pbdom90.pbd,编写解析xml的代码

//定义基本变量

PBDOM_Builder builder
PBDOM_Document doc
PBDOM_Element root, children[], element
string value

builder = Create PBDOM_BUILDER

//in_xml为要解析的xml字符串

//例如<Response><resultCode>S0000</resultCode></Response>

//要获取resultCode的值,进行下列操作即可获得

doc = builder.BuildFromString(in_xml) 

// Get the root element of the document 
root = doc.GetRootElement()  // Get an array of all child elements 
root.GetChildElements(children)
// Get only elements with a given name 

//Response为xml字符串的根节点,即最外层节点
root.GetChildElements( "Response", children ) // Get the first element with a given name 

string resultCode

//resultCode为子节点,通过GetText()函数即可获得子节点resultCode的值s0000

resultCode = root.GetChildElement( "resultCode" ).GetText()
PB解析XML字符串的实践方法

 

 

相关文章: