您的位置:首页 > 其它

字符串转换成XML并使用DOM、JDOM、DOM4J解析

2011-09-26 11:41 861 查看
public static void main(String[] args) {

String str="<?xml version=\"1.0\" encoding=\"UTF-8\"?>";

str+="<STUDENT>";

str+="<RESULT>";

str+="<AGE>18</AGE>";

str+="<NAME>张三</NAME>";

str+="</RESULT>";

str+="<RESULT>";

str+="<AGE>19</AGE>";

str+="<NAME>里斯</NAME>";

str+="</RESULT>";

str+="</STUDENT>";

//dom

try{

DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();

DocumentBuilder builder = factory.newDocumentBuilder();

Document document = builder.parse(new ByteArrayInputStream(str.getBytes("UTF-8")));

NodeList node = document.getElementsByTagName("RESULT");

for (int i = 0; i < node.getLength(); i++) {

System.out.println("age:"+document.getElementsByTagName("AGE").item(i).getFirstChild().getNodeValue());

System.out.println("name:"+document.getElementsByTagName("NAME").item(i).getFirstChild().getNodeValue());

}

}catch(Exception e){

e.printStackTrace();

}

//dom4j

try {

SAXReader reader = new SAXReader();

org.dom4j.Document document = reader.read(new ByteArrayInputStream(str.getBytes("UTF-8")));

Element root = document.getRootElement();

Iterator rt= root.elementIterator("RESULT");

Element element;

while(rt.hasNext()){

element = (Element) rt.next();

System.out.print("age:" + element.elementText("AGE"));

System.out.println("name:" + element.elementText("NAME"));

}

} catch (Exception e) {

e.printStackTrace();

}

//jdom

try {

SAXBuilder builder = new SAXBuilder();

org.jdom.Document document = builder.build(new ByteArrayInputStream(str.getBytes("UTF-8")));

org.jdom.Element element = document.getRootElement();

List node = element.getChildren();

for(int i=0;i<node.size();i++) {

System.out.print("age:" +((org.jdom.Element)node.get(i)).getChild("AGE").getText());

System.out.println("name:" + ((org.jdom.Element)node.get(i)).getChild("NAME").getText());

}

} catch (Exception e) {

e.printStackTrace();

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: