`
wzdoxu
  • 浏览: 95373 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

JAVA读取XML文件

阅读更多
请用JAVA编一段程序 读取一个XML文件
XML代码:

<?xml version="1.0" encoding="GB2312" ?>
<Root>
<Header left="100" Top="30">日报表</Header>
</Root>

并按照XML里描述的位置 把表头“日报表”三个字打印出来

import java.io.File;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;

import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NodeList;

public class Xml {
public static void main(String[] args) {
try {
DocumentBuilderFactory factory = DocumentBuilderFactory
.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document document = builder.parse(new File("E:\\新建 文本文档 (3).xml"));
Element rootElement = document.getDocumentElement();

NodeList list = rootElement.getElementsByTagName("Header");
Element element = (Element) list.item(0);
System.out.println(element.getChildNodes().item(0).getNodeValue());

} catch (Exception e) {
System.out.println("exception:" + e.getMessage());
}
}
}

用 java 从 XML 文件里按照位置提取一些数据的方法有 3 种以上。最直观、方便的是利用 XPath 表达式:


import javax.xml.xpath.*;
import org.xml.sax.*;

class ExtractXMLDataByXpath {
    public static void main(String[] args) throws Exception {
        XPath xpathEngine = XPathFactory.newInstance().newXPath();
        String xpathExpression = "/Root/Header/text()";
        InputSource xmlSource = new InputSource("C:\\a.xml");    // 假设 XML 文件路径为 C:\a.xml
        System.out.println(xpathEngine.evaluate(xpathExpression, xmlSource));
    }
}
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics