【发布时间】:2020-06-12 18:38:06
【问题描述】:
为反序列化以下 XML 文件进行了大量试验:
<?xml version="1.0" encoding="UTF-8"?>
<map version="1.2" tiledversion="1.3.1" orientation="orthogonal" renderorder="right-down" compressionlevel="0" width="80" height="50" tilewidth="16" tileheight="16" infinite="0" nextlayerid="2" nextobjectid="1">
<tileset firstgid="1" name="TilesetSA" tilewidth="16" tileheight="16" tilecount="4000" columns="80">
<image source="../../TilesetSA.png" width="1280" height="800"/>
</tileset>
<layer id="1" name="Walls" width="80" height="50">
<data encoding="csv">
3,3,3,3,3,3,3,3,3,3,3,3,3,3,
3,81,81,81,81,81,81,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,3,3,3,3,3,3,3,3,3,3,3,
3,3,3,3,3,3,3,3,3,3,3,3,3,3,
</data>
</layer>
</map>
我没有机会更改 xml 文件,它必须保持原样。 我设法检索“map”、“tileset”和“image”的所有属性,但在“layer”元素中,只能检索属性(id、name、width、height),数据元素始终保持为空。
我为“map”、“tileset”、“layer”、“image”和“map”创建了专门的类。
有人能建议我解决这个“空结果”问题的代码吗?
【问题讨论】:
-
您可以发布您为反序列化 XML 编写的代码吗?另外,Layer 的类签名是什么?
标签: c# xml deserialization