DOM(学习)java篇一

博客介绍了在Java环境中为使用XML文件信息,解析文件创建Document对象的过程,包括创建DocumentBuilderFactory、DocumentBuilder等步骤,还给出了示例代码,同时介绍了获取根节点、根节点列表以及多层孩子递归定义函数等操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

为了使用 XML 文件中的信息,必须解析文件以创建一个 Document 对象。 Document 对象是一个接口,因而不能直接将它实例化;一般情况下,应用程序会相应使用一个工厂。准确的过程因实现而异,但是基本思想是相同的。(同样
,Level 3 标准化了这个任务。)在这个例子 Java 环境中,解析文件是一个三步过程:
创建 DocumentBuilderFactory。 DocumentBuilderFactory 对象创建
DocumentBuilder。
创建 DocumentBuilder。 DocumentBuilder 执行实际的解析以创建 Document
对象。
解析文件以创建 Document 对象。
现在您可以开始构建应用程序了。
如:
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.DocumentBuilder;
import org.w3c.dom.DOMImplementation;
import org.w3c.dom.*;
import java.io.*;
public class ShowDomImpl { 
   public static void main (String args[])
   {
      try
       {
         File file=new File("order.xml");
         Document doc=null;
         DocumentBuilderFactory dbf =

DocumentBuilderFactory.newInstance();
         DocumentBuilder docb = dbf.newDocumentBuilder();
         doc=docb.parse(file);
       }
      catch (Exception e) {}     
 }
 
}
获得根节点

         doc=docb.parse(file);
         Element root=doc.getDocumentElement();
         System.out.println("The root of the xml document is         

"+root.getNodeName());
获得根节点列表:
         NodeList children=root.getChildNodes();
         System.out.println("There is "+children.getLength()+"Node.");
       
使用getFirstChild()和getNextSibling()
for(Node child=root.getFirstChild();child!

=null;child=root.getNextSibling())
在多层孩子中实现递归
定义一函数
 public static void stepThrough(Node start)
 {
  System.out.println(start.getNodeName()

+"="+start.getNodeValue());
  for(Node child=start.getFirstChild();child!

=null;child=start.getNextSibling())
  {
   stepThrough(child);
  }
 }
在主函数中调用
setThrough(root)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值