关于XML我就不多介绍了。这里只是介绍下小弟学习DOM解析XML的代码笔记。
首先贴出XML的代码
<?xml version="1.0" encoding="UTF-8"?>
<employees>
<employee>
<name>tom</name>
<sex>boy</sex>
<age>24</age>
</employee>
<employee>
<name>sara</name>
<sex>girl</sex>
<age>24</age>
</employee>
</employees>
public static void main(String[] args) {
//建立解析工厂
try {
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
String url="D:\\workSpace\\J2SE\\src\\com\\xmlTest\\test.xml";
// 拿到XML
Document doc = db.parse(url);
//去掉空白占位符
doc.normalize();
// NodeList employees = doc.getElementsByTagName("employee");
NodeList employees = doc.getChildNodes();
for(int i= 0;i<employees.getLength();i++){
/**
* 简单XML格式DOM解析
*/
Node employee = employees.item(i);
System.out.println(employee.getNodeName()
+ ":" + employee.getTextContent());
}
}
} catch (DOMException e) {
e.printStackTrace();
} catch (ParserConfigurationException e) {
e.printStackTrace();
} catch (SAXException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
XML第二种
<?xml version="1.0" encoding="UTF-8"?>
<books>
<book id="12" type="chm">
<name>java</name>
<price>80</price>
</book>
<book id="15" type="pdf">
<name>Spring</name>
<price>30</price>
</book>
</books>
解析上面XML的JAVA代码部分
public void testXml2()throws Exception{
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
String url="D:\\workSpace\\J2SE\\src\\com\\xmlTest\\test2.xml";
Document doc = db.parse(url);
doc.normalize();
Element element = doc.getDocumentElement();
NodeList books = element.getElementsByTagName("book");
Map map = new HashMap();
for(int i=0;i<books.getLength();i++){
Element bookElement = (Element) books.item(i);
map.put("id", bookElement.getAttribute("id"));
map.put("type", bookElement.getAttribute("type"));
NodeList childNodes = bookElement.getChildNodes();
for(int j=0;j<childNodes.getLength();j++){
Node book = childNodes.item(j);
if(book.getNodeType()==Node.ELEMENT_NODE){
if("name".equals(book.getNodeName()))
map.put("name", book.getFirstChild().getNodeValue());
else if("price".equals(book.getNodeName()))
map.put("price", book.getFirstChild().getNodeValue());
}
}
System.out.println(map);
}
}
以上是今天的学习代码总结,大家可以相互学习参考
分享到:
相关推荐
自己的XML DOM4J学习笔记 自己的XML DOM4J学习笔记
识货就下,先睹为快! Dom4j学习教程+API htc.doc XML实用大全.doc xml学习笔记.doc xml学习笔记.doc
XML基础及DOM 文档对象模式和SAX 基于事件处理模式 学习笔记
DOM4J笔记.学习如何应用DOM4J开发XML
整理了四种常用的Java操作xml的方法 学习java操作xml的好资料
java学习笔记——使用DOM解析XML和使用SAX解析XML
dom4j 被广泛的应用到xml解析上。这里给出部分网络资源
本文档详细的给出了XML的介绍和XML解析的实例。包括DOM4J和SAX解析,节点的名和值得读取,属性的读取。生成XML文件等
和 元素可以让我们使用没有在Schema中定义的元素去扩展XML文档。例如,在Schema family.xsd中使用了 </xs:element>
XML DWR 解析dom 解析xml Ajax 杂乱的例子 学习笔记
dom4j是目前比较主流的对xml文件进行解析的API。
学习xml,使用dom4j进行操作的一些例子,其中包含一些从xml中读取数据的案例和通过java操作xml
移动开发的小白树懒正在努力的学习移动开发中的web体系中的xml解析,每天提高自己...
NULL 博文链接:https://even2012.iteye.com/blog/1832068
自己总结的一份xml学习笔记。内容包括xml文件的书写格式,约束、jaxp及dom4j对xml解析的代码。
Python 的 DOM 包是基于 SAX 构建的,并且包括在 Python 2.0 的标准 XML 支持里。 一、xml.dom的简单介绍 1、主要方法: minidom.parse(filename):加载读取XML文件doc.documentElement:获取XML文档对象node....
java操作xml文件大家可以借鉴一下 利用dom4j第三方jar包 支持增加 删除 修改 查询
由于DOM4J在解析XML时只能一层一层解析,所以当XML文件层数过多时使用会很不方便, 结合XPATH就可以直接获取到某个元素 使用dom4j支持xpath的操作的几种主要形式 第一种形式 /a/b/c: 表示一层...
学习xml时候的笔记以及心得 1)DOM(JAXP Crimson解析器) 2)SAX 3)JDOM http://www.jdom.org 4)DOM4J http://dom4j.sourceforge.net
以上是XLM学习笔记,包含JAVA工程以及所需有的DOM4j需要jar包,包含学习ppt,内容涉及DTD和Schema,好像必须要设置资源分,没分的可以留言私发。