专注Java教育14年 全国咨询/投诉热线:444-1124-454
赢咖4LOGO图
始于2009,口口相传的Java黄埔军校
首页 学习攻略 Java学习 Java解析xml字符串

Java解析xml字符串

更新时间:2022-09-20 10:27:09 来源:赢咖4 浏览861次

使用 DOM 和 StringReader。

导入 javax.xml.parsers.*;
导入 org.xml.sax.InputSource;
导入 org.w3c.dom.*;
导入java.io.*;
公共类 ParseXMLString {
  公共静态无效主要(字符串arg []){
     字符串 xmlRecords =
      "<数据>" +
      " <员工>" +
      " <name>约翰</name>" +
      " <title>经理</title>" +
      " </员工>" +
      " <员工>" +
      " <name>萨拉</name>" +
      " <title>文员</title>" +
      " </员工>" +
      "</数据>";
    尝试 {
        DocumentBuilderFactory dbf =
            DocumentBuilderFactory.newInstance();
        DocumentBuilder db = dbf.newDocumentBuilder();
        InputSource is = new InputSource();
        is.setCharacterStream(new StringReader(xmlRecords));
        文档 doc = db.parse(is);
        NodeList 节点 = doc.getElementsByTagName("employee");
        // 迭代员工
        for (int i = 0; i < nodes.getLength(); i++) {
           元素 element = (Element) nodes.item(i);
           NodeList name = element.getElementsByTagName("name");
           元素行 = (元素) name.item(0);
           System.out.println("名称:" + getCharacterDataFromElement(line));
           NodeList title = element.getElementsByTagName("title");
           line = (元素) title.item(0);
           System.out.println("标题:" + getCharacterDataFromElement(line));
        }
    }
    捕获(异常 e){
        e.printStackTrace();
    }
    /*
    输出 :
        姓名:约翰
        职称:经理
        姓名:萨拉
        职称:文员
    */        
  }
  公共静态字符串 getCharacterDataFromElement(元素 e){
    节点子 = e.getFirstChild();
    if(CharacterData 的子实例){
       CharacterData cd = (CharacterData) 孩子;
       返回 cd.getData();
    }
    返回 ”?”;
  }
}

 

提交申请后,顾问老师会电话与您沟通安排学习

免费课程推荐 >>
技术文档推荐 >>