TinyXML(TinyXPath) 使用总结

TinyXML(TinyXPath) 使用总结
社会化媒体营销 > TinyXML(TinyXPath) 使用总结

TinyXML(TinyXPath) 使用总结(1)

原来的Windows 平台下的项目使用了MSXML 组件来访问Web Service 接口,后来因为跨平台的需要,在Linux 平台下改用了GSOAP+TinyXML(TinyXPath)来完成所需功能。使用TinyXPath 还是遇到了一些问题,总结一下。

这里要说明一下TinyXPath 是TinyXML+XPath,下载TinyXPath 包的时候会包含TinyXML 的原文件。

1. 使用XPath ,来获取XML 子节点

TinyXpath 所支持的XPath 并不完整,而且缺少文档资料,试了一整天才试出来,直接把结果写下来

1. )节点名大小写无关匹配

这里要用到name 函数和translate 函数,首先转化所有的节点名到大写,然后再比较。语法如下:

*[translate(name(),

'abcdefghijklmnopqrstuvwxyz','ABCDEFGHIJKLMNOPQRSTUVWXYZ')='XXXX'] name 函数返回节点名字,translate 函数转换到大写。

2. )节点内容比较

text 函数返回节点内容, 语法为

*[text()='XXXX']

3.) 选择固定位置节点

position 函数用以指定第几个节点,语法为:

*[position()=XXX] ,此处是数字类型

举个例子,我们要选定节点名字为AAA ,内容为BBB 的第二个节点,XPath 应改名为:

*[translate(name(),

'abcdefghijklmnopqrstuvwxyz','ABCDEFGHIJKLMNOPQRSTUVWXYZ')='AAA' and text()='BBB' and position()=2]

这里还有个查询效率问题,并不确定把 position()=2 条件放在最前面是不是可以提高效率。以上内容可以封装成一个函数:

inline string getNodeXPath(const string & strNodeName, string strText="", string pos="")

点击显示全文

分页:123
  • xpath详解总结,很全面

    请看一个典型的 XPath 查询表达式:/messages/message//child:: node《》[@id=0],其中/messages/message 是路径《绝对路径以"/ "开始》,child::是轴表示在子节点...

    贡献者:园丁网数学
    202545
  • C操作xml之xpath语法

    C操作xml之xpath语法_计算机软件及应用_IT/计算机_专业资料。以前也发过关于.net 中操作 XML 的帖子,但不是很详细,现在我将详细介绍一下 c#如何操 作 xml ...

    贡献者:irigaqn6
    364714
  • XPath入门教程整理

    </list> XML 声明《如 <?xml version="1.0" encoding="UTF-8"?>》或文档类型定义《DTD》 没有节点类型,因此在 XPath 中不能引用这类实体。 元素节点代表 ...

    贡献者:li_chun_tao
    172373
  • Xpath使用实例简单粗暴

    Xpath使用实例简单粗暴_计算机软件及应用_IT/计算机_专业资料 暂无评价|0人阅读|0次下载|举报文档Xpath使用实例简单粗暴_计算机软件及应用_IT/计算机_专业资料。XPath...

    贡献者:kun_hu
    199496
  • XPath语法规则及实例

    XPath语法规则及实例_IT/计算机_专业资料。XPath 语法规则术语: 一、 XPath 术语: 1. 节点: 在 XPath 中,有七种类型的节点:元素、属性、文本、命名空间、处理指...

    贡献者:wulq507
    192503
  • 八爪鱼如何通过xpath实现自定义定位元素

    八爪鱼如何通过xpath实现自定义定位元素_互联网_IT/计算机_专业资料。本文介绍八爪鱼如何通过xpath实现自定义定位元素。八爪鱼·云采集服务平台 www.bazhuayu.com 八爪...

    贡献者:八爪鱼大数据
    136215
  • XPath实例教程

    XPath 实例教程一、基本的 XPath 语法 实例教程一、基本的 XPath 语法类似于在一个文件系统中定位文件,如果路径以斜线 / 开始, 那么该路径就表示到一个元素的绝...

    贡献者:luocb1980
    365779
  • JS中常用的xpath特性

    JS中常用的xpath特性_计算机软件及应用_IT/计算机_专业资料。JS中常用的xpath特性JS 中常用的 xpath 特性 //选择所有 dir 元素的值等于 xx 的元素 Dom.document...

    贡献者:李晗影
    408214
  • 八爪鱼如何通过xpath实现自定义定位元素

    八爪鱼如何通过xpath实现自定义定位元素_互联网_IT/计算机_专业资料。本文介绍八爪鱼如何通过xpath实现自定义定位元素。八爪鱼·云采集服务平台 www.bazhuayu.com 八爪...

  • xpath的使用方法

    xpath的使用方法_计算机软件及应用_IT/计算机_专业资料。xpath的使用方法 首先要说的是 XPath 数据类型。XPath 可分为四种数据类型: 1. 节点集《node-set》 节点...

  • XPath入门教程整理

    </list> XML 声明《如 <?xml version="1.0" encoding="UTF-8"?>》或文档类型定义《DTD》 没有节点类型,因此在 XPath 中不能引用这类实体。 元素节点代表 ...

  • Xpath使用实例简单粗暴

    Xpath使用实例简单粗暴_计算机软件及应用_IT/计算机_专业资料 暂无评价|0人阅读|0次下载|举报文档Xpath使用实例简单粗暴_计算机软件及应用_IT/计算机_专业资料。XPath...

  • C操作xml之xpath语法

    C操作xml之xpath语法_计算机软件及应用_IT/计算机_专业资料。以前也发过关于.net 中操作 XML 的帖子,但不是很详细,现在我将详细介绍一下 c#如何操 作 xml ...

24小时热门信息
  • docker学习笔记_图文

    Docker 学习笔记一、Docker 的安装和部署 1、docker 依赖 linux 的内核如果使用 centos7 以下的,请先升级 linux 内核 2、安装 rpm -Uvh http://download.fedora...

    贡献者:天行健vip179
    277979
  • docker实战配置

    3.2 CGroups fs 你可以在 /sys/fs/cgroup/memory/system.slice/docker-$FULL_CONTAINER_ID.sco pe/下面发现关于内存的所有信息,例如: $ ls /sys/fs/cgroup/...

    贡献者:Pricestag
    112137
  • docker命令语句

    docker命令语句_计算机软件及应用_IT/计算机_专业资料。docker命令语句 Docker 基础这篇基础文章是方便用户在使用 cSphere 平台之前,了解 docker 基础知识。 针对已经...

    贡献者:尐凍
    238868
  • docker私有库Docker Registry设置

    7 8 Removing intermediate container9f5f5068c3f3 9 Step4:COPY docker-registry-v2.conf/etc/nginx/docker-registry-v2.conf 1 0 --->74acc70fa106 ...

    贡献者:messiah0088
    333678
  • docker

    docker_法律资料_人文社科_专业资料。Docker Docker 是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的、可 移植的、 自给自足的容器。 开发者在笔记本上...

    贡献者:gengtianyi9
    406572
  • docker云架构

    docker云架构_计算机软件及应用_IT/计算机_专业资料。docker,云架构,分布式集群 Docker:一种云计算下的新的虚拟化技术解决方案 Abstract: 云计算是如今互联网的前沿...

    贡献者:fangfeiqiang8
    286938
精彩推荐
  • Flash 基础入门学习Flash 基础入门学习

    Flash 基础入门学习_计算机软件及应用_IT/计算机_专业资料。FLSAH一些入门技巧学习 Flash 基础 一、界面介绍 启动 Flash 后,Flash 的界面主要有菜单栏、标准工具栏...贡献者:柳上陌絮185200

  • Adobe Flash Player 11.7官方正式版下载Adobe Flash Player 11.7官方正式版下载

    Adobe Flash Player 11.7 官方正式版下载 Flash Player 11.7 系列除了完善了安全性、稳定性和性能、设备兼容性,此次 新版本并没有带来功能上的重大变化,主要是...贡献者:cnbeta_mu666502

  • flash样题flash样题

    一、单选题 1、Flash 软件最突出的两大优势是 ___、___。A A、流式播放、矢量动画 B、流式播放、静态图像处理 C、非流式播放、点阵图像 D、非流式播放...贡献者:0_0柒柒103875

  • flash教案《课标》_图文flash教案《课标》_图文

    课程名称:计算机动画设计 FLASH 周课时:4 课时/班 任课班级:计算机 1、2 班 授课教师:刘 猛 授课时间:2014——2015 学年度第二学期 六枝特区职业技术学校 ...贡献者:xiaomengge32355536

  • Flash 基本介绍_图文Flash 基本介绍_图文

    Flash 基础知识补充 一、Flash 的工作界面基本介绍 在 Flash 的【工作区】主界面中,包括了菜单栏、选项卡式的【文档】窗格、 【时间轴】 /【动画编辑器】面板...贡献者:单眼皮姑娘q222054

  • Macromedia Flash_8 基础教程Macromedia Flash_8 基础教程

    Flash 8.0 基础教程一、Flash 基础 启动 Flash 在桌面找一个红色图标 双击即可启动,也可以单击“开始” -“所有程序”,在程序菜单中找到 Flash 或者 Macromedia ...贡献者:liusheng61168241

  • flashflash

    flash_其它课程_初中教育_教育专区。中考 第十一部分 FLASH 理论题 1.如图,请判断这是下面哪个动画的时间轴《 》 A、机器人跳舞的逐帧动画 B、蜜蜂跳“8”字舞...贡献者:江南碎梦294953

  • flashflash

    flash_计算机软件及应用_IT/计算机_专业资料。u8 FLASH_WriteNByte《u32 addr, u8 *dat_buf, u8 no》 《 FLASH_Unlock《》;//Unlock the Flash while《1》 《 ...贡献者:宁仔365294953

手机版 | 欢迎来到社会化媒体营销
RSS订阅