更新時(shí)間:2022-09-20 10:27:09 來源:動(dòng)力節(jié)點(diǎn) 瀏覽1388次
使用 DOM 和 StringReader。
導(dǎo)入 javax.xml.parsers.*;
導(dǎo)入 org.xml.sax.InputSource;
導(dǎo)入 org.w3c.dom.*;
導(dǎo)入java.io.*;
公共類 ParseXMLString {
公共靜態(tài)無效主要(字符串a(chǎn)rg []){
字符串 xmlRecords =
"<數(shù)據(jù)>" +
" <員工>" +
" <name>約翰</name>" +
" <title>經(jīng)理</title>" +
" </員工>" +
" <員工>" +
" <name>薩拉</name>" +
" <title>文員</title>" +
" </員工>" +
"</數(shù)據(jù)>";
嘗試 {
DocumentBuilderFactory dbf =
DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
InputSource is = new InputSource();
is.setCharacterStream(new StringReader(xmlRecords));
文檔 doc = db.parse(is);
NodeList 節(jié)點(diǎn) = 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("標(biāo)題:" + getCharacterDataFromElement(line));
}
}
捕獲(異常 e){
e.printStackTrace();
}
/*
輸出 :
姓名:約翰
職稱:經(jīng)理
姓名:薩拉
職稱:文員
*/
}
公共靜態(tài)字符串 getCharacterDataFromElement(元素 e){
節(jié)點(diǎn)子 = e.getFirstChild();
if(CharacterData 的子實(shí)例){
CharacterData cd = (CharacterData) 孩子;
返回 cd.getData();
}
返回 ”?”;
}
}
相關(guān)閱讀
0基礎(chǔ) 0學(xué)費(fèi) 15天面授
有基礎(chǔ) 直達(dá)就業(yè)
業(yè)余時(shí)間 高薪轉(zhuǎn)行
工作1~3年,加薪神器
工作3~5年,晉升架構(gòu)
提交申請(qǐng)后,顧問老師會(huì)電話與您溝通安排學(xué)習(xí)