我有简单的XML文件。
<Parent id=1>
<Child>1</Child>
<Child>2</Child>
</Parent>
<Parent id=2>
<Child>3</Child>
<Child>4</Child>
</Parent>
如何获得子标签,其中父ID = 2的值? 这里是我的代码。
XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
XmlPullParser xpp = factory.newPullParser();
xpp.setInput(new StringReader(readFileAsString(xmlFilename)));
int event;
while ((event = xpp.next()) != XmlPullParser.END_DOCUMENT)
{
//found <Parent id=2>
if (event == XmlPullParser.START_TAG && xpp.getName().equalsIgnoreCase("Parent")
&& Integer.parseInt(xpp.getAttributeValue(null, "id")) == 2)
{
//TODO - what's next?
}
}
我应该怎么TODO标签后做什么? 我试图做的,而 - 一切都错了。 编辑:看来,XmlPullParser不能在这种情况下使用。 它不能看到不同属性等于变量之间的区别。 我会尝试使用的SAXParser的的startElement(URI字符串,字符串的localName,字符串QNAME,属性的属性)。