我的问题如下: 我想解析用Tiled Map Editor创建的xml文件,其中我插入了一个objectlayer(用于碰撞对象)。但不幸的是,Tiled将xml文件中的节点命名为“objectgroup”及其后代“object”
<objectgroup name="solidObjects" width="100" height="100">
<object gid="265" x="16" y="35"/>
<object gid="265" x="66" y="36"/>
</objectgroup>
我正在尝试做类似
的事情XDocument doc = XDocument.Load("pathtoFile\sourcefile.xml");
List<Rectangle> objectList = new List<Rectangle>();
foreach (var object in doc.Element("objectgroup").Descendants("object"))
{ objectList.Add(objectRectangle); }
但是因为“object”是c#中受保护的单词,所以它不起作用。 如何以最简单的方式处理这个问题的任何提示?
答案 0 :(得分:3)
如果你绝对的话,肯定 使用object
作为你的变量名(不推荐使用),那么你可以在前面添加@
符号:
foreach (var @object in doc.Element("objectgroup").Descendants("object")) {
objectList.Add(@object);
}
@
符号前缀允许代码中的标识符使用保留字作为其名称。