所以我正在编写一个需要从网上获取图书价格数据的Android应用程序。我发现isbndb.com似乎提供了良好的反思和价格比较。唯一的问题是他们的xml文件有点复杂。
我不熟悉使用Java解析XML而且不太了解。我知道如何解析基本的xml文件。使用简单的标签。我通常使用DocumentBuilder和DocumentBuilderFactory但是这是我试图解析的文件的一部分。
<Prices price_time="2012-04-08T20:05:49Z">
<Price store_isbn="" store_title="Discworld: Thief of Time" store_url="http://isbndb.com/x/book/thief_of_time/buy/isbn/ebay.html" store_id="ebay" currency_code="USD" is_in_stock="1" is_historic="0" check_time="2008-12-09T12:00:51Z" is_new="0" currency_rate="1" price="0.99"/>
<Price store_isbn="" store_title="" store_url="http://bookshop.blackwell.com/bobus/scripts/home.jsp?action=search&type=isbn&term=0061031321&source=1154376025" store_id="blackwell" currency_code="USD" is_in_stock="0" is_historic="0" is_new="1" check_time="2011-11-08T02:54:15Z" currency_rate="1" price="7.99"/>
</Prices>
我要做的是获取属性值中的信息,例如store_isbn或store_title。如果有人能帮助我,我会非常感激。
谢谢
答案 0 :(得分:1)
您可以使用上面提到的link来解析xml,对于检索属性值,您可以使用以下内容。
public void startElement(String uri, String localName,String qName,
Attributes attributes) throws SAXException {
System.out.println("Start Element :" + attributes.getValue("store_title"));
}
attributes.getValue(“store_title”)方法将用于解析属性值。希望它会有所帮助。