我有一个这样的xml文件:
<main>
<zone id="A1">
<area id="house">
<sprite>test.jpg</sprite>
<location x="33" y="345"/>
<sprite>test.jpg</sprite>
<location x="33" y="345"/>
<text id="1">text example</text>
<text id="2">text example</text>
<text id="3">text example</text>
<text id="4">text example</text>
<text id="5">text example</text>
<text id="6">text example</text>
<text id="7">text example</text>
<text id="8">text example</text>
<text id="9">text example</text>
<text id="10">text example</text>
</area>
</zone>
<zone id="A2">
<area id="house">
<sprite>test2.jpg</sprite>
<location x="32" y="11"/>
<text id="1">text example</text>
<text id="2">text example</text>
<text id="3">text example</text>
</area>
</zone>
</main>
我有主元素作为根元素,2个子元素称为区域,具有不同的id,区域元素内部还有另一个元素称为具有不同id的区域。我要读取的所有数据都在区域元素内。我需要创建一个带有两个参数zoneId
和areaId
的函数来读取特定的区域信息,并将其作为数组或对象返回。
这里有一个解决你问题的方法:
private void readXml(String zoneToFind, String areaToFind) {
XmlReader reader = new XmlReader();
try {
XmlReader.Element root = reader.parse(Gdx.files.internal("test.xml"));
Array<XmlReader.Element> zones = root.getChildrenByName("zone");
for (XmlReader.Element zone : zones) {
if (zoneToFind.equals(zone.getAttribute("id"))) {
Array<XmlReader.Element> areas = zone.getChildrenByName("area");
for (XmlReader.Element area : areas) {
if (areaToFind.equals(area.getAttribute("id"))) {
for (int i = 0; i < area.getChildCount(); i++) {
XmlReader.Element child = area.getChild(i);
child.getName();
child.getText();
child.getAttributes();
}
}
}
}
}
} catch (IOException e) {
// proper exception handling
}
}
说明:
>
首先,你应该通过
XmlReader。元素根=读取器。解析(Gdx.files.internal(“test.xml”);
test.xml
应该位于Android资产文件夹中
请注意,当没有匹配项时,您应该正确处理这些情况。
最后,我们知道当前区域是我们正在寻找的,所以你可以遍历它的所有子对象,做任何你需要的事情。但这三种方法应能返回有关元素的足够信息:
child.getName(); -- name is like sprite, location...
child.getText(); -- text is like text example...
child.getAttributes(); - attributes are id, x, y...
问题内容: 第一。我知道关于如何访问jar文件中的图像已经存在各种主题。第二。我尝试了很多选择,但没有一个没有用。我当然知道在某个地方我犯了一个错误。您能帮助我了解我在做什么错吗? 因此,我有一个名为“ j”的原型项目,它仅包含一个Java类- 客户端。客户端尝试访问图像good.png。将所有文件打包到可执行jar文件后,客户端将无法访问文件。我在月食中工作,并使用蚂蚁。 com.pupcom.
问题内容: 如果我有以下控制器: 读出的正确方法是什么?如果有必要定义中,也不会使它语义上不正确假设是描述相关的东西的属性,而不是? 更新: 对此进行进一步的思考,如果一个孩子有多个孩子,将会在检索上产生冲突。我的问题是,什么是访问的正确方法是从? 问题答案: AngularJS中的作用域使用原型继承,当在子作用域中查找属性时,解释器将从子对象开始查找原型链,并继续寻找父对象,直到找到该属性为止,
关于使用 Iframe 进行跨域访问 localstorage 的问题。 A 页面:http://127.0.0.1:5173/localstorage. 新窗口打开进行 localstorage.setItem("token", "test") B页面:http://localhost:7456/localstorage.html 中想要访问 A 页面的 localstorage. 方法尝试使用
怎么可以让这个 self.logger 属于子类(不是直接添加到子类属性这种方式),并且可以运行
我有一个名为的组件,还有一个子组件名为。智利组件有一个名为的状态。我需要从AvailabiltyCalendar组件访问该状态并获取该状态值。我该怎么做呢。 可用压路机组件 DatePicker组件
问题内容: 我正在编写一个python软件包,其中包含需要在子目录中打开数据文件的模块。现在,我已经将文件的路径硬编码到了我的类和函数中。我想编写更健壮的代码,无论子目录在用户系统上的安装位置如何,都可以访问该子目录。 我尝试了多种方法,但是到目前为止,我还没有运气。似乎大多数“当前目录”命令返回系统的python解释器的目录,而不是模块的目录。 看来这应该是一个微不足道的普遍问题。但是我似乎无法