• android xml产生和解析


        public static void writeToXml(Map<String, Object> map,Writer writer) throws Exception, IllegalStateException, IOException{ 
            XmlSerializer serializer = Xml.newSerializer(); 
            serializer.setOutput(writer); 
         serializer.startDocument("UTF-8", true); 
         serializer.startTag(null, "condition");   
         for(Entry<String, Object> entry:map.entrySet()){
                 serializer.startTag(null, entry.getKey()); 
                 serializer.text(entry.getValue().toString()); 
                 serializer.endTag(null,  entry.getKey()); 
         }
           serializer.startTag(null, "condition");  
        serializer.endDocument(); 
        writer.flush(); 
        writer.close(); 
      }  

    	public static List<Map<String, Object>> getNurseInfo(String in, String format)
    			throws Exception {
    		InputStream inputstream = XjxPublicUnit.StringTOInputStream(in, format);
    
    		return getNurseInfotomap(inputstream);
    
    	}
    
    	public static List<NurseInfo> getNurseInfo(InputStream xml)
    			throws Exception {
    		List<NurseInfo> myNurseInfos = null;    
    		NurseInfo myNurseInfo = null;
    
    		XmlPullParser pullParser = Xml.newPullParser();
    		pullParser.setInput(xml, "UTF-8"); // 为Pull解释器设置要解析的XML数据
    		int event = pullParser.getEventType();
    		while (event != XmlPullParser.END_DOCUMENT) {
    
    			switch (event) {
    
    			case XmlPullParser.START_DOCUMENT:
    				if (myNurseInfo == null) {
    					myNurseInfo = new NurseInfo();
    				}
    				myNurseInfos = new ArrayList<NurseInfo>();//初始化集合   
    				break;
    			case XmlPullParser.START_TAG:
    				
    				if (myNurseInfo == null && "row".equals(pullParser.getName())) {
    					myNurseInfo = new NurseInfo();
    				}
    				
    				if ("jlid".equals(pullParser.getName())) {
    					myNurseInfo.setJlid(pullParser.nextText());
    				}
    				
    			
    				if ("lsh".equals(pullParser.getName())) {
    					myNurseInfo.setLsh(pullParser.nextText());
    				}
    				
    				if ("rqsj".equals(pullParser.getName())) {
    					myNurseInfo.setRqsj(pullParser.nextText());
    				}
    			
    
    				if ("s".equals(pullParser.getName())) {
    					myNurseInfo.setS(pullParser.nextText());
    				}
    				
    				if ("f".equals(pullParser.getName())) {
    					myNurseInfo.setF(pullParser.nextText());
    				}
    			
    				
    
    				if ("JLR".equals(pullParser.getName())) {
    					myNurseInfo.setJlr(pullParser.nextText());
    					}
    				
    				if ("bbreathingmachine".equals(pullParser.getName())) {
    					myNurseInfo.setBbreathingmachine(pullParser.nextText());
    				}
    				
    				if ("hx".equals(pullParser.getName())) {
    					myNurseInfo.setHx(pullParser.nextText());
    				}
    				if ("sz".equals(pullParser.getName())) {
    					myNurseInfo.setSz(pullParser.nextText());
    				}
    				if ("xybhd".equals(pullParser.getName())) {
    					myNurseInfo.setXybhd(pullParser.nextText());
    				}
    				if ("tk_y".equals(pullParser.getName())) {
    					myNurseInfo.setTk_y(pullParser.nextText());
    				}
    				
    				
    				if ("tk_z".equals(pullParser.getName())) {
    					myNurseInfo.setTk_z(pullParser.nextText());
    				}
    				if ("dgfs_y".equals(pullParser.getName())) {
    					myNurseInfo.setDgfs_y(pullParser.nextText());
    				}
    				if ("dgfs_z".equals(pullParser.getName())) {
    					myNurseInfo.setDgfs_z(pullParser.nextText());
    				}
    				
    				
    				if ("rl_mc".equals(pullParser.getName())) {
    					myNurseInfo.setRl_mc(pullParser.nextText());
    				}
    				if ("rllx".equals(pullParser.getName())) {
    					myNurseInfo.setRllx(pullParser.nextText());
    				}
    				if ("rl_l".equals(pullParser.getName())) {
    					myNurseInfo.setRl_l(pullParser.nextText());
    				}
    				
    				
    				if ("cl_mc".equals(pullParser.getName())) {
    					myNurseInfo.setCl_mc(pullParser.nextText());
    				}
    				if ("rllx".equals(pullParser.getName())) {
    					myNurseInfo.setCllx(pullParser.nextText());
    				}
    				if ("cl_l".equals(pullParser.getName())) {
    					myNurseInfo.setCl_l(pullParser.nextText());
    				}
    				
    				if ("rank".equals(pullParser.getName())) {
    					myNurseInfo.setRank(pullParser.nextText());
    				}
    				break;
    			case XmlPullParser.END_TAG:
    				if ("row".equals(pullParser.getName())){
    					myNurseInfos.add(myNurseInfo);//将book添加到books集合    
    		            myNurseInfo = null;    
    				}
    			}
    			event = pullParser.next();
    		}
    
    		return myNurseInfos;
    	}
    	public static List<Map<String, Object>> getNurseInfotomap(InputStream inputStream) throws Exception {
    		List<Map<String, Object>> myNurseInfos = null;
    		Map<String, Object> myNurseInfo = null;
    		 
    		XmlPullParser parser = Xml.newPullParser();    
    		parser.setInput(inputStream, "UTF-8");    
    
    		int event = parser.getEventType();//产生第一个事件  
    		
    		while(event!=XmlPullParser.END_DOCUMENT){   
    			switch(event){  
    			  case XmlPullParser.START_DOCUMENT://判断当前事件是否是文档开始事件    
    				  myNurseInfos = new ArrayList<Map<String, Object>>();
    				  break;    
    			  case XmlPullParser.START_TAG://判断当前事件是否是标签元素开始事件    
    				  if("row".equals(parser.getName())){//判断开始标签元素是否是book    
    					  myNurseInfo = new HashMap<String, Object>();      
                      }  
    				  if(myNurseInfo!=null){  
    					  if (!("row".equals(parser.getName()))){//判断开始标签元素是否是jlid    
    						  myNurseInfo.put(parser.getName(),parser.nextText()); 
    					  } 
    				  }
    				  break; 
    			  case XmlPullParser.END_TAG://判断当前事件是否是标签元素结束事件  
    				  if("row".equals(parser.getName())){//判断结束标签元素是否是book    
    					  myNurseInfos.add(myNurseInfo);//将book添加到books集合    
    					  myNurseInfo = null;    
    					  }    
    					  break;
                    }    
                     event = parser.next();//进入下一个元素并触发相应事件    
    		      }//end while 
    		     return myNurseInfos;  
    			}
    
    
    
    
    
    
    package com.xjx.unit;
    
    import java.io.ByteArrayInputStream;
    import java.io.InputStream;
    
    public class XjxPublicUnit {
    
    	 public static InputStream StringTOInputStream(String in,String strFormat) throws Exception{  
    	        
    	        ByteArrayInputStream is = new ByteArrayInputStream(in.getBytes(strFormat));  
    	        return is;  
    	    }  
    }
    

      

  • 相关阅读:
    21 情态动词
    20 动词的用法
    19 完成时/现在完成时和过去完成时的区别
    18 将来时
    17 一般过去时和过去进行时
    16 一般现在时和现在进行时
    15 There / Here be句型
    14 不定量表达法
    13 副词
    12 形容词
  • 原文地址:https://www.cnblogs.com/chjx1988/p/3880178.html
Copyright © 2020-2023  润新知