使用 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();
}
返回 ”?”;
}
}
你适合学Java吗?4大专业测评方法
代码逻辑 吸收能力 技术学习能力 综合素质
先测评确定适合在学习