zoukankan      html  css  js  c++  java
  • 就TinyXml使用答复一位网友


    作者:朱金灿
    来源:http://blog.csdn.net/clever101


          一位网友说看了我的TinyXml快速入门系列文章。在修改节点属性值函数ModifyNode_Attribute这个函数的用法参照我的例子运行了下,
    <Connection ip="192.168.0.1" timeout="123.456000"/> 如果只有这一个节点的时候是修改正确的,但是如果再加上几个相同名字的节点呢?就像下面一样:

    <Connection ip="192.168.0.1" timeout="123.456000"/>
    <Connection ip="192.168.0.2" timeout="123.456001"/>
    <Connection ip="192.168.0.3" timeout="123.456002"/>

    现在他想修改的是<Connection ip="192.168.0.3" timeout="123.456002"/> 这行为<Connection ip="192.168.0.4" timeout="123.456003"/>
    请问该如何修改?


           鉴于他所提问题有一定代表性,我就再写一篇以作答复。在《TinyXml快速入门(二)》中我提到了无论查询节点、删除节点、修改节点和增加节点,其实都离不开一个函数,就是根据节点名获取相关节点指针,其中一个关键的函数:


      


           具体到这位网友的问题,其实就是增加了一个判断条件,就是要求所求节点不但要求节点名为Connection,还有属性ip的值为192.168.0.3。那么我们可以对GetNodePointerByName函数稍作修改:


      



       然后再增加一个修改属性的函数:




           如果要将
    <Connection ip="192.168.0.1" timeout="123.456000"/>
    <Connection ip="192.168.0.2" timeout="123.456001"/>
    <Connection ip="192.168.0.3" timeout="123.456002"/>

    中的<Connection ip="192.168.0.3" timeout="123.456002"/> 这行修改为<Connection ip="192.168.0.4" timeout="123.456003"/>
    那么测试代码就如下:


      




  • 相关阅读:
    C# 线程安全的操作控件
    C# 使用HttpListener创建简易Web服务器
    PHP mjpeg 连续图片格式生成
    XAMPP PHP开发环境安装备忘
    dnspod CURL模拟访问
    在MAC上使用Fiddler抓包手机
    解决关于docker: Error response from daemon: endpoint with name v5 already exists in network bridge.
    【电子政务】政务服务事项相关概念知识:事项办理深度 四级标准
    转:脱机环境下window 使用pycharm 连接cx_oracle 连接数据库
    转 shell if判断写成一行 和 shell中如何注释掉一段话
  • 原文地址:https://www.cnblogs.com/lanzhi/p/6471074.html
Copyright © 2011-2022 走看看