您的位置:首页 > 编程语言 > Java开发

java 读取XML文件里的节点内容

2017-04-11 09:51 465 查看
package xmlImportOutport;

import java.io.IOException;

import org.dom4j.DocumentException;

import org.w3c.dom.*;

import org.xml.sax.*;

import javax.xml.parsers.*;

public class test {

public static void main(String arge[]) throws DocumentException {

// 实例化一个文档构建器工厂

DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();

try {

// 通过文档构建器工厂获取一个文档构建器

DocumentBuilder db = dbf.newDocumentBuilder();

// 通过文档通过文档构建器构建一个文档实例

Document doc = db.parse("d:/test01.xml");

// 获取所有名字为 “TURNOS” 的节点

NodeList nl1 = doc.getElementsByTagName("TURNOS");

int size1 = nl1.getLength();

for (int i = 0; i < size1; i++) {

Node n = nl1.item(i);

// 获取 n 节点下所有的子节点。此处值得注意,在DOM解析时会将所有回车都视为 n 节点的子节点。

NodeList nl2 = n.getChildNodes();

// 因为上面的原因,在此例中第一个 n 节点有 2 个子节点,而第二个 n 节点则有 5 个子节点(因为多了3个回车)。

int size2 = nl2.getLength();

for (int j = 0; j < size2; j++) {

Node n2 = nl2.item(j);

// 还是因为上面的原因,故此要处判断当 n2 节点有子节点的时才输出。

if (n2.hasChildNodes()) {

System.out.println(n2.getNodeName() + " = "

+ n2.getFirstChild().getNodeValue());

}

}

}

} catch (ParserConfigurationException ex) {

ex.printStackTrace();

} catch (IOException ex) {

ex.printStackTrace();

} catch (SAXException ex) {

ex.printStackTrace();

}

}

}





大小: 19.9 KB





大小: 71.3 KB

查看图片附件
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: