解析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;
}