如何解析xml格式的字符串的案例(Document解析)
如何解析xml格式的字符串的案例
/* * 创建日期 2008-4-15 * * TODO 要更改此生成的文件的模板,请转至 * 窗口 - 首选项 - Java - 代码样式 - 代码模板 */ package com.tsinghua; import java.io.*; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.*; import org.w3c.dom.*; /** * @author administrator * * TODO 要更改此生成的类型注释的模板,请转至 * 窗口 - 首选项 - Java - 代码样式 - 代码模板 */ public class Dome2 { public static void main(String[] args) { // 开始 解析 person.xml文件 //1解析器 工厂 类 DocumentBuilderFactory dbf=DocumentBuilderFactory.newInstance(); try { // 通过 解析器 工厂 创建 一个 解析 器 DocumentBuilder db=dbf.newDocumentBuilder(); //告诉 改 解析器 去 解析 那个 文件 -->dom树 // Document dm=db.parse("f:\\person.xml"); //对字符串解析 String testStr= "<?xml version=\"1.0\" encoding=\"gb2312\"?>"+ "<!--该xml存储了人员信息-->"+ "<company><person sex=\"male\" id=\"0001\"><name att=\"ok\"><realname>小小</realname>"+ "<nickname>小猪</nickname></name><email>[email protected]</email></person></company>"; //将该字符串转为InputStream流 InputStream iStream=new ByteArrayInputStream(testStr.getBytes()); Document dm=db.parse(iStream); //得到 所有 person节点 NodeList persons=dm.getElementsByTagName("person"); for(int i=0;i<persons.getLength();i++){ //element 和 node 是 同一 概念 //不同 的 是 element 提供 更多 方法 Element personElement = (Element)persons.item(i); //得到person节点的属性 String id=personElement.getAttribute("id"); System.out.println("id="+id); NodeList nameList=personElement.getElementsByTagName("name"); Element name=(Element)nameList.item(0); String att=name.getAttribute("att"); System.out.println("att="+att); //取出 name 的 值 // System.out.println("name="+nameList.item(0).getFirstChild().getNodeValue()); } } catch (Exception e) { // TODO: handle exception e.printStackTrace(); } finally { } } }
相关推荐
与卿画眉共浮生 2020-10-14
xiyang 2020-08-21
XGQ 2020-07-04
Andrewjdw 2020-05-29
Yakamoz 2020-05-26
行吟阁 2020-05-18
88491874 2020-04-30
baijinswpu 2020-07-29
leonranri 2020-07-26
zhongliwen 2020-07-05
麋鹿麋鹿迷了路 2020-07-05
zengyu00 2020-07-05
CoderBoy 2020-06-28
whbing 2020-06-28
绝望的乐园 2020-06-27
wellfly 2020-06-26
菇星獨行 2020-06-25
草原孤狼 2020-06-25
坚持着执着 2020-06-16