我在
android上开发应用程序!
好吧,我现在有一点冲突,我想执行一个XPath查询,但我没有到达解决这个问题.
<?xml version="1.0"?> <catalog> <book id="bk101"> <author>Gambardella,Matthew</author> <title>XML Developer's Guide</title> <genre>Computer</genre> <price>44.95</price> <publish_date>2000-10-01</publish_date> <description>An in-depth look at creating applications with XML.</description> </book> <book id="bk102"> <author>Ralls,Kim</author> <title>Midnight Rain</title> <genre>Fantasy</genre> <price>5.95</price> <publish_date>2000-12-16</publish_date> <description>A former architect battles corporate zombies,an evil sorceress.</description> </book> <book id="bk103"> <author>Corets,Eva</author> <title>Maeve Ascendant</title> <genre>Fantasy</genre> <price>5.95</price> <publish_date>2000-11-17</publish_date> <description>After the collapse of a nanotechnology society in England.</description> </book> </catalog>
我能怎么做??
提前致谢!!
解决方法
看看这个例子:
import java.io.FileReader; import javax.xml.xpath.XPath; import javax.xml.xpath.XPathConstants; import javax.xml.xpath.XPathFactory; import org.w3c.dom.Element; import org.w3c.dom.NodeList; import org.xml.sax.InputSource; public class GuestList { public static void main(String[] args) throws Exception { XPathFactory factory = XPathFactory.newInstance(); XPath xPath = factory.newXPath(); NodeList shows = (NodeList) xPath.evaluate("/schedule/show",new InputSource(new FileReader( "tds.xml")),XPathConstants.NODESET); for (int i = 0; i < shows.getLength(); i++) { Element show = (Element) shows.item(i); String guestName = xPath.evaluate("guest/name",show); String guestCredit = xPath.evaluate("guest/credit",show); System.out.println(show.getAttribute("weekday") + "," + show.getAttribute("date") + " - " + guestName + " (" + guestCredit + ")"); } } }