3、pugixml 改节点名、属性名、属性值

复制代码
    pugi::xml_document doc;
    if (!doc.load_string("<node id='123'>text</node>", pugi::parse_default | pugi::parse_comments)) return -1;//xml的内容
    doc.print(cout);//打印原始内容

    // 节点node
    pugi::xml_node node = doc.child("node");

    // 修改节点名,node->notnode
    std::cout << node.set_name("notnode");
    std::cout << ", new node name: " << node.name() << std::endl;

    // 属性id
    pugi::xml_attribute attr = node.attribute("id");

    // 修改属性名、值,id->key,123->345
    std::cout << attr.set_name("key") << ", " << attr.set_value("345");
    std::cout << ", new attribute: " << attr.name() << "=" << attr.value() << std::endl;

    // 再次修改属性id的值,345->1.234
    attr.set_value(1.234);
    std::cout << "new attribute value: " << attr.value() << std::endl;

    // 再次修改属性id的值,1.234->true
    attr = true;//布尔值
    std::cout << "final attribute value: " << attr.value() << std::endl;

    doc.print(std::cout);//打印结果
复制代码

 

posted @   夕西行  阅读(2013)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示