热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

使用PBDOM读取XML的一个例子

1、创建pbdom_doc_1.xml,内容如下:<!DOCTYPEabc[<!ENTITYtext"SomeText">]><abc&
1、创建pbdom_doc_1.xml,内容如下:

]>
 
  
     Child Data Text
    
     &text;
    
    
  

 

2、将PBDOM90.PBD添加进来(因为编译器的版本为pb9)

读取代码如下:

PBDOM_BUILDER pbdom_bldr
PBDOM_Document pbdom_doc
PBDOM_Object pbdom_obj_array[]
PBDOM_Element pbdom_elem
integer iFileNum1
long l = 0
Try
 // Create a PBDOM_DOCUMENT from the XML file
 pbdom_bldr = Create PBDOM_Builder
pbdom_doc = pbdom_bldr.BuildFromFile ("pbdom_doc_1.xml")
 // Test the contents of the PBDOM_DOCUMENT
 // First test the PBDOM_DOCTYPE in the document
   MessageBox ("PBDOM_DOCTYPE GetName()", pbdom_doc.GetDocType().GetName())
   MessageBox ("PBDOM_DOCTYPE GetInternalSubset()", pbdom_doc.GetDocType().GetInternalSubset())
 // Test the root element
   MessageBox ("PBDOM_DOC Root Element Name",  pbdom_doc.GetRootElement().GetName())
// test the root element's child element
   MessageBox ("PBDOM_DOC Element Name",  pbdom_doc.GetRootElement().GetChildElement("data").GetName())
 // Collect all the child PBDOM_OBJECTs of the
 // element
   pbdom_doc.GetRootElement().GetChildElement("data").GetContent(pbdom_obj_array)
 // Display the class name, the name and the text contained
 // within each PBDOM_OBJECT array item
   for l = 1 to UpperBound(pbdom_obj_array)
     MessageBox ("Child Object " + string(l) + " Class",pbdom_obj_array[l].GetObjectClassString())
     MessageBox ("Child Object " + string(l) + " Name", pbdom_obj_array[l].GetName())
     MessageBox ("Child Object " + string(l) + " Text",pbdom_obj_array[l].GetText())
   next
 // Retrieve and display the name and text value of the
 // "An_Attribute" attribute from the element
    pbdom_elem = pbdom_obj_array[2]
   MessageBox ("child_data Attribute name", pbdom_elem.GetAttribute("An_Attribute").GetName())
   MessageBox ("child_data Attribute value", pbdom_elem.GetAttribute("An_Attribute").GetText())
 // save the DOM Tree contained within pbdom_doc into
 // a separate file "c:/pbdom_doc_2.xml"
   pbdom_doc.SaveDocument ("pbdom_doc_2.xml")
   Destroy pbdom_bldr
 CATCH (PBDOM_Exception except)
 MessageBox ("Exception Occurred", except.Text)
 END TRY


推荐阅读
  • 本文整理了Java中org.gwtbootstrap3.client.ui.Icon.addDomHandler()方法的一些代码示例,展示了Icon.ad ... [详细]
  • 基于halcon的特征匹配实例
    特征匹配原图模板识别图代码结果原图模板识别图代码*这个例子在图片数据库中查找文章的页面。*第一步是训练不同的页面并创建模型。*然后搜索未知图像并检测出正确的文章页面。*请注意& ... [详细]
  • 重入锁(ReentrantLock)学习及实现原理
    本文介绍了重入锁(ReentrantLock)的学习及实现原理。在学习synchronized的基础上,重入锁提供了更多的灵活性和功能。文章详细介绍了重入锁的特性、使用方法和实现原理,并提供了类图和测试代码供读者参考。重入锁支持重入和公平与非公平两种实现方式,通过对比和分析,读者可以更好地理解和应用重入锁。 ... [详细]
  • GreenDAO快速入门
    前言之前在自己做项目的时候,用到了GreenDAO数据库,其实对于数据库辅助工具库从OrmLite,到litePal再到GreenDAO,总是在不停的切换,但是没有真正去了解他们的 ... [详细]
  • Android实战——jsoup实现网络爬虫,糗事百科项目的起步
    本文介绍了Android实战中使用jsoup实现网络爬虫的方法,以糗事百科项目为例。对于初学者来说,数据源的缺乏是做项目的最大烦恼之一。本文讲述了如何使用网络爬虫获取数据,并以糗事百科作为练手项目。同时,提到了使用jsoup需要结合前端基础知识,以及如果学过JS的话可以更轻松地使用该框架。 ... [详细]
  • 本文整理了Java面试中常见的问题及相关概念的解析,包括HashMap中为什么重写equals还要重写hashcode、map的分类和常见情况、final关键字的用法、Synchronized和lock的区别、volatile的介绍、Syncronized锁的作用、构造函数和构造函数重载的概念、方法覆盖和方法重载的区别、反射获取和设置对象私有字段的值的方法、通过反射创建对象的方式以及内部类的详解。 ... [详细]
  • Hibernate延迟加载深入分析-集合属性的延迟加载策略
    本文深入分析了Hibernate延迟加载的机制,特别是集合属性的延迟加载策略。通过延迟加载,可以降低系统的内存开销,提高Hibernate的运行性能。对于集合属性,推荐使用延迟加载策略,即在系统需要使用集合属性时才从数据库装载关联的数据,避免一次加载所有集合属性导致性能下降。 ... [详细]
  • 1Lock与ReadWriteLock1.1LockpublicinterfaceLock{voidlock();voidlockInterruptibl ... [详细]
  • 第五章:集合01
    第三章:集合01一:集合的框架结构图1.集合和数组的区别:2.Collection集合的方法:publicclassCol ... [详细]
  • 转载请注明原文地址:http:www.cnblogs.comygj0930p6409067.html1:HammingdistanceTheHammin ... [详细]
  • CF809A:Do you want a date?(数学  思维)
    A.Doyouwantadate?timelimitpertest2secondsmemorylimitpertest256megabytesinputstandardinputo ... [详细]
  • [线段树|平衡树|树状数组]LightOJ - 1087 - Diablo
    1087-DiabloPDF(English)StatisticsForum ... [详细]
  • ProblemDescriptionXiaoAlivesinavillage.Lastyearfloodrainedthevillage ... [详细]
  • CF:3D City Model(小思维)问题解析和代码实现
    本文通过解析CF:3D City Model问题,介绍了问题的背景和要求,并给出了相应的代码实现。该问题涉及到在一个矩形的网格上建造城市的情景,每个网格单元可以作为建筑的基础,建筑由多个立方体叠加而成。文章详细讲解了问题的解决思路,并给出了相应的代码实现供读者参考。 ... [详细]
  • 全文检索之sphinx源码分析优化(二)
        对上一篇的优化部分简要解释一下代码的变动,由于还是涉及一些工作上的业务,所以不会原模原样的写下来,不过解释一下逻辑则具体的代码实现也不会太难的    searchd     ... [详细]
author-avatar
水皱皱_446
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有