解析xml

来源:互联网 发布:医院 数据库 编辑:程序博客网 时间:2024/05/16 19:08

public static InfoObject parsernewspic(String xml)
 {
  InfoObject info=new InfoObject();
  try
  {
   DocumentBuilderFactory dbf=DocumentBuilderFactory.newInstance();
   ByteArrayInputStream buf = new ByteArrayInputStream(xml.getBytes("UTF-8"));
   DocumentBuilder db=dbf.newDocumentBuilder();
   Document dom=db.parse(buf);
   Element root=dom.getDocumentElement();
   
   Element titlenode=(Element)root.getElementsByTagName("title").item(0);
   String title=titlenode.getFirstChild().getNodeValue();
   Element newpicnode=(Element)root.getElementsByTagName("newpic").item(0);
   String newpic=newpicnode.getFirstChild().getNodeValue();
   Element newdesnode=(Element)root.getElementsByTagName("newdes").item(0);
   String content=newdesnode.getFirstChild().getNodeValue();
   info.setTitle(title);
   info.setBasepic(newpic);
   info.setContent(content);
  }catch(Exception e)
  {
   e.printStackTrace();
  }
  return info;
 }
 
 public static ArrayList<AdvObject> parseradvxml(String xml)
 {
  ArrayList<AdvObject> advlist=new ArrayList<AdvObject>();
  try
  {
   DocumentBuilderFactory dbf=DocumentBuilderFactory.newInstance();
   ByteArrayInputStream buf = new ByteArrayInputStream(xml.getBytes("UTF-8"));
   DocumentBuilder db=dbf.newDocumentBuilder();
   Document dom=db.parse(buf);
   Element root=dom.getDocumentElement();
   
   NodeList advnodelist=root.getElementsByTagName("ad");
   for(int i=0;i<advnodelist.getLength();i++)
   {
    AdvObject advobject=new AdvObject();
    Element adnode=(Element)advnodelist.item(i);
    Element titlenode=(Element)adnode.getElementsByTagName("title").item(0);
    Element idnode=(Element)adnode.getElementsByTagName("id").item(0);
    String id=idnode.getFirstChild().getNodeValue();
    String title="";
    title=titlenode.getFirstChild().getNodeValue();
    Element advidnode=(Element)adnode.getElementsByTagName("advid").item(0);
    String advid=advidnode.getFirstChild().getNodeValue();
    Element typenode=(Element)adnode.getElementsByTagName("type").item(0);
    String type=typenode.getFirstChild().getNodeValue();
    Element frontpicnode=(Element)adnode.getElementsByTagName("frontpic").item(0);
    String frontpic="";
    if(frontpicnode!=null)
    {
     if(frontpicnode.getFirstChild()!=null)
     {
      frontpic=frontpicnode.getFirstChild().getNodeValue();
     }
    }
    Element timenode=(Element)adnode.getElementsByTagName("time").item(0);
    String time=timenode.getFirstChild().getNodeValue();
    Element contentnode=(Element)adnode.getElementsByTagName("con").item(0);
    String content=contentnode.getFirstChild().getNodeValue();
    NodeList piclist=adnode.getElementsByTagName("pic");
    ArrayList<String> picurllist=null;
    if(piclist.getLength()>0)
    {
     picurllist=new ArrayList<String>();
     for(int j=0;j<piclist.getLength();j++)
     {
      Element picnode=(Element)piclist.item(j);
      String pic=picnode.getFirstChild().getNodeValue();
      picurllist.add(pic);
     }
    }
    advobject.setId(Integer.parseInt(id));
    advobject.setAdvid(advid);
    advobject.setType(type);
    advobject.setFrontpic(frontpic);
    advobject.setTitle(title);
    advobject.setTime(time);
    advobject.setContent(content);
    advobject.setPiclist(picurllist);
    advlist.add(advobject);
   }
  }catch(Exception e)
  {
   e.printStackTrace();
  }
  return advlist;
 }

原创粉丝点击