Java如何读取XML文件 具体实现

互联网 17-1-11
今天的CSDN常见问题来讲解下在Java中如何读取XML文件的内容。

直接上代码吧,注释写的很清楚了!

import java.io.*;  import javax.xml.parsers.DocumentBuilder;  import javax.xml.parsers.DocumentBuilderFactory;  import org.w3c.dom.Document;  import org.w3c.dom.Element;  import org.w3c.dom.Node;  import org.w3c.dom.NodeList;  public class XMLReaderTest {   public static void main(String args[]) {    Element element = null;    // 可以使用绝对路劲    File f = new File("test.xml");    // documentBuilder为抽象不能直接实例化(将XML文件转换为DOM文件)    DocumentBuilder db = null;    DocumentBuilderFactory dbf = null;    try {     // 返回documentBuilderFactory对象     dbf = DocumentBuilderFactory.newInstance();     // 返回db对象用documentBuilderFatory对象获得返回documentBuildr对象     db = dbf.newDocumentBuilder();     // 得到一个DOM并返回给document对象     Document dt = db.parse(f);     // 得到一个elment根元素     element = dt.getDocumentElement();     // 获得根节点     System.out.println("根元素:" + element.getNodeName());     // 获得根元素下的子节点     NodeList childNodes = element.getChildNodes();     // 遍历这些子节点     for (int i = 0; i < childNodes.getLength(); i++) {      // 获得每个对应位置i的结点      Node node1 = childNodes.item(i);      if ("Account".equals(node1.getNodeName())) {       // 如果节点的名称为"Account",则输出Account元素属性type       System.out.println("\r\n找到一篇账号. 所属区域: " + node1.getAttributes().getNamedItem("type").getNodeValue() + ". ");       // 获得<Accounts>下的节点       NodeList nodeDetail = node1.getChildNodes();       // 遍历<Accounts>下的节点       for (int j = 0; j < nodeDetail.getLength(); j++) {        // 获得<Accounts>元素每一个节点        Node detail = nodeDetail.item(j);        if ("code".equals(detail.getNodeName())) // 输出code         System.out.println("卡号: " + detail.getTextContent());        else if ("pass".equals(detail.getNodeName())) // 输出pass         System.out.println("密码: " + detail.getTextContent());        else if ("name".equals(detail.getNodeName())) // 输出name         System.out.println("姓名: " + detail.getTextContent());        else if ("money".equals(detail.getNodeName())) // 输出money         System.out.println("余额: " + detail.getTextContent());       }      }     }    }    catch (Exception e) {     e.printStackTrace();    }   }  }

然后我们测试的XML文件(test.xml)要放在项目工程的根目录下,其内容是:

<?xml version="1.0" encoding="gbk"?>  <Accounts>   <Account type="type1">    <code>100001</code>    <pass>123</pass>    <name>李四</name>    <money>1000000.00</money>   </Account>   <Account type="type2">    <code>100002</code>    <pass>123</pass>    <name>张三</name>    <money>1000.00</money>   </Account>  </Accounts>

直接运行代码,输出:

根元素:Accounts

找到一篇账号. 所属区域: type1. 卡号: 100001密码: 123姓名: 李四余额: 1000000.00

找到一篇账号. 所属区域: type2. 卡号: 100002密码: 123姓名: 张三余额: 1000.00

更多Java如何读取XML文件 具体实现相关文章请关注PHP中文网!

来源链接:
免责声明:
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表本站的观点或立场
标签: Java XML文件
上一篇:php获取远程图片并下载保存到本地的方法分析 下一篇:在java中使用dom4j解析xml(示例代码)

相关资讯