Android解析XML之XmlPullParser

來源:互聯網
上載者:User
    public void getXML(String url) throws XmlPullParserException,IOException,URISyntaxException    {    String xmlString=downloadXML(url);        XmlPullParserFactory factory=XmlPullParserFactory.newInstance();        factory.setNamespaceAware(true);        XmlPullParser parser=factory.newPullParser();                parser.setInput(new StringReader(xmlString));        int eventType=parser.getEventType();         List<Forecast_conditions> conditionsList=new ArrayList<Forecast_conditions>();     Forecast_conditions forecast_conditions=null;            while (eventType != XmlPullParser.END_DOCUMENT) {if (eventType == XmlPullParser.START_DOCUMENT) {System.out.println("Start Document");}else if (eventType== XmlPullParser.START_TAG) {System.out.println("Start Tag "+parser.getName());if (parser.getName().equals("forecast_conditions")) {forecast_conditions=new Forecast_conditions();}if (parser.getName().equals("day_of_week")) {forecast_conditions.setDay_of_week(parser.getAttributeValue(0));}else if (parser.getName().equals("low")) {forecast_conditions.setLow(parser.getAttributeValue(0));}else if (parser.getName().equals("high")) {forecast_conditions.setHigh(parser.getAttributeValue(0));}else if (parser.getName().equals("icon")) {try {forecast_conditions.setIcon(parser.getAttributeValue(0));} catch (Exception e) {// TODO: handle exception}}else if (parser.getName().equals("condition")) {try { forecast_conditions.setCondition(parser.getAttributeValue(0));} catch(Exception e){}           }   /*int size=parser.getAttributeCount();for (int i = 0; i < size; i++) {System.out.println("AttributeName "+parser.getAttributeName(i));System.out.println("AttributeValue"+parser.getAttributeValue(i));} */}else if(eventType== XmlPullParser.END_TAG){System.out.println("End Tag "+parser.getName());if (parser.getName().equals("forecast_conditions")) {conditionsList.add(forecast_conditions);}}else if(eventType==XmlPullParser.TEXT){System.out.println("Text "+parser.getText());}eventType=parser.next();}    System.out.println("End Document");            bindToListView(conditionsList);    //XmlUtils.    }
 
本執行個體是不完整執行個體。 初學Android, 很多地方不規範。  僅供參考。

  

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.