zoukankan      html  css  js  c++  java
  • Android解析XML之XmlPullParser

        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, 很多地方不规范。  仅供参考。

      

  • 相关阅读:
    【SpringCloud】工程分类概况
    【Spring Alibaba】Sentinel/Nacos/RocketMQ/Seata/
    【Eureka】服务架构类知识点
    求车速
    尼科彻斯定理
    Tom数
    弟弟的作业
    汽水瓶
    POJ-2533-Longest Ordered Subsequence(LIS模板)
    HDU-1331-Function Run Fun(动态规划3)
  • 原文地址:https://www.cnblogs.com/qingci/p/2219604.html
Copyright © 2011-2022 走看看