读XML文件最有效的方法是什么?

C++ What is the most efficient way of reading XML files?

本文关键字:方法 是什么 有效 XML 文件      更新时间:2023-10-16

我很有兴趣尝试找出如何读取XMLfiles,因为它似乎是为我的电子游戏创建关卡的最佳方式。我使用pyxel edit程序来设计关卡,我可以将精灵表导出为XML格式。

  • 这是一个2d精灵表,所以x值表示精灵在x轴上的位置,y值表示精灵在y轴上的位置。
  • 列表项

输出如下所示:

<tilemap tileswide="2" tileshigh="2" tilewidth="16" tileheight="16">
   <layer number="0" name="Layer 0">
      <tile x="0" y="0" index="0" rot="0" flipX="false"/>
      <tile x="1" y="0" index="1" rot="0" flipX="false"/>
      <tile x="0" y="1" index="2" rot="0" flipX="false"/>
      <tile x="1" y="1" index="3" rot="0" flipX="false"/>
   </layer>
</tilemap>

我开始学习javascript和c#的Unity3D,但我从来没有发现自己的情况下,XML将是有用的。

有什么好的在线资源可以帮助我更好地理解它吗?

如果有人有时间提供一个如何阅读这篇文章的例子,这也会对我有很大的帮助,但前提是你有时间这样做。如果没有,那么我会使用我找到的任何资源:)

使用现有库

一个流行的是TinyXML-2,作为一个依赖项包含它很简单(单个.cpp文件+头文件),速度快,易于使用。

您可以在联机文档中找到一个示例。

对于解析XML文件,也许boost library是一个非常好的选择。解析XML文件很方便。有关更多详细信息,请单击boost/property_tree/xml_parser.hpp。我希望这对你有帮助。