当前位置:网站首页 > 技术博客 > 正文

xml格式文件怎么编辑



  • 🖱 博客主页:在下马农的碎碎念
  • 🤗 欢迎关注🔎点赞👍收藏⭐️留言📝
  • ✍ 本文由在下马农原创,首发于CSDN
  • 📆 首发时间:2021/12/25
  • 📅 最近更新时间:2021/12/25
  • 🤵 此马非凡马,房星本是星。向前敲瘦骨,犹自带铜声。
  • 📇 系列文章目录: 快点我呀,我是目录
  • 🙏作者水平有限,如发现错误,请留言轰炸哦!万分感谢!

仍然自由由我,永远高唱我歌

在这里插入图片描述

TinyXML-2是一个用于解析和生成XML文档的轻量级C++库,它提供了一组简单的类和函数来处理 XML 数据。它是TinyXML的升级版本,旨在提供更好的性能和更多功能。

以下是TinyXML-2的一些特点和功能:

  1. 轻量级:TinyXML-2的设计目标是简单、紧凑和高效。它的代码库非常小巧,适用于嵌入式系统或资源有限的环境。
  2. 解析XML:TinyXML-2可以解析XML文档并构建相应的内部数据结构。它支持基本的XML语法,包括元素、属性、文本和注释等。
  3. 生成XML:除了解析XML,TinyXML-2还可以生成XML文档。它允许用户创建元素、属性和文本,并将它们组合成完整的XML文档。
  4. 错误处理:TinyXML-2提供了强大的错误处理机制。在解析或生成XML时,如果遇到任何错误,它会生成相应的错误消息,以便开发人员可以轻松地调试和修复问题。
  5. 支持XPath查询:TinyXML-2支持使用XPath表达式对XML文档进行查询。XPath是一种用于在XML文档中定位节点的语言,它提供了强大的查找和过滤功能。
  6. Unicode支持:TinyXML-2内置了对Unicode字符集的支持。它可以正确处理各种语言的文本,包括非ASCII字符。
  7. 跨平台:TinyXML-2可以在多个操作系统上运行,包括Windows、Linux和Mac OS X等。它使用标准的C++代码编写,不依赖于特定的操作系统功能。
  8. 开源许可:TinyXML-2是基于MIT许可证发布的开源软件。这意味着用户可以免费使用、修改和分发这个库的源代码。

总体而言,TinyXML-2是一个简单而强大的C++库,用于处理XML文档。它提供了解析和生成XML的功能,支持错误处理和XPath查询,并具有跨平台和Unicode支持等特性。无论是嵌入式系统还是桌面应用程序,TinyXML-2都是一个方便易用的选择。

中主要涉及五个对象,分别为:

1. XMLDocument:
XMLDocument 是 TinyXML2 的核心对象,用于表示整个 XML 文档。它可以用于解析 XML 文件或从头开始创建新的 XML 文档。

2. XMLElement:
XMLElement 表示 XML 文档中的元素。每个元素可以包含其他元素、属性和文本内容。XMLElement 对象提供了方法来获取和修改元素的名称、属性和内容。

3. XMLAttribute:
XMLAttribute 用于表示 XML 元素的属性。每个属性由名称和值组成,可以通过 XMLElement 对象的方法来访问和修改属性。

4. XMLText:
XMLText 用于表示 XML 元素中的文本内容。它可以包含文本节点中的实际文本数据,可以通过 XMLElement 对象的方法来获取和修改文本内容。

5. XMLComment:
XMLComment 用于表示 XML 中的注释。它可以包含注释节点中的实际注释内容,可以通过 XMLElement 对象的方法来获取和修改注释内容。

学会这几个对象的使用,我们就可以随心所欲地使用tinyxml2来操作xml文件

使用方式非常简单,只需要将和拷贝到项目目录,并在使用到tinyxml的文件中包含tinyxml.h头文件以及引入命名空间即可。不需要编译即可直接使用。

 

使用tinyxml中的XMLDocument对象可以实现xml文件的创建。

注意:本章节所有代码可在博主github获取,链接如下: ==tinyxml2使用==
如果不能访问,直接私信博主即可获取。

接口介绍

  1. 创建新的Declaration对象
     
  2. 将新的子元素添加到调用此接口的XML元素的末尾
     
  3. 创建新的Elements元素对象
     
  4. 保存文档到文件,在对xml文档做出修改之后,调用此方法保存方法。 `
     

示例介绍

在下面的示例程序中,我们首先创建一个XMLDocument对象doc。之后创建一个XML的声明并将其插入到doc的末尾,之后有创建一个根元素名为Root,并将此元素也插入到文档对象doc末尾。最后创建一个元素名为Child,将其添加在根元素Root的末尾。最后保存文件到example.xml。

示例代码:

 

编译之后执行生成的可执行程序,会在执行程序的地方生成一个xml文件,名字是examole.xml

接口介绍

  1. 加载xml文件,加载成功返回0
     

示例代码

 

当我们获取到某个特定的元素之后,我们可以使用tinyxml2提供的接口将其打印出来。

接口介绍

  1. 将给定的XML对象打印到XMLPrinter中,支持打印XMLDocument、XMLElement和XMLText等节点。
     

示例代码

 
 

运行结果:

在这里插入图片描述

接口介绍

  1. 使用NewElement创建新的元素节点:
     
  2. 使用NewText创建一个包含文本内容的文本节点:
     
  3. 使用NewComment 创建注释节点
     
  4. 使用NewDeclaration创建一个声明节点:
     
  5. 使用NewDocument创建一个新的XML文档节点:
     
  6. 使用InsertFirstChild将一个节点作为父节点的第一个子节点插入:
     
  7. 使用InsertEndChild将一个节点作为父节点的最后一个子节点插入:
     
  8. 使用InsertAfterChild将一个节点插入到另一个节点之后
     
  9. 使用InsertBeforeChild将一个节点插入到另一个节点之前:
     

示例代码

 

运行结果

example.xml

 

接口介绍

  1. 获取XML文档对象的根节点
     
  2. 获取某节点的第一个孩子节点
     
      
    此方法功能为获取某个节点的第一个孩子节点,如果添加了一个字符串参数,如表示要获取node节点的第一个名为child的节点。

示例代码

 

运行结果

原文件example.xml

 

删除后的文件example_modified.xml

 

修改节点文本值常用方法为

接口介绍

  1. 设置node节点的名字
     
  2. 设置node节点的内容文本值
     

示例程序

 

运行结果

Modify改之前的xml

 

Modify改后的xml

 

接口介绍

  1. 为node节点设置参数
     

示例代码

 

运行结果

原始xml文件

 

设置属性后xml文件

 

接口介绍

  1. 获取节点的名字
     
  2. 获取节点的内容文本值
     

示例程序

 

运行结果

使用的xml文件

 

控制台输出:

接口介绍

  1. 获取节点node名为name的参数值
     
  2. 获取attr指向参数对象的参数名
     
  3. 获取attr指向参数对象的参数值
     
  4. 获取attr指向参数对象的下一个参数对象指针
     

示例程序

 

运行结果

使用的xml文件

 

控制台运行输出结果

Parameter name value: Jack
param name is: name, param value is: Jack
param name is: age, param value is: 6

  • 上一篇: 如何搭建uvm验证平台
  • 下一篇: struct rtc_time
  • 版权声明


    相关文章:

  • 如何搭建uvm验证平台2025-03-18 10:30:00
  • mysql触发器语句2025-03-18 10:30:00
  • orientdb neo4j2025-03-18 10:30:00
  • malloc程序结束会释放吗2025-03-18 10:30:00
  • jsch pom2025-03-18 10:30:00
  • struct rtc_time2025-03-18 10:30:00
  • jjzzz(【优化营商环境】古丈县发改局:以“一核两主三特”为轴 坚定打好“发展六战”)2025-03-18 10:30:00
  • http升级https2025-03-18 10:30:00
  • date.add2025-03-18 10:30:00
  • 什么是跳表2025-03-18 10:30:00