zoukankan      html  css  js  c++  java
  • Java XML的总结(三)--Dom解析

    一、JAXP DOM解析 javax.xml.parsers
    1、获得document对象
    //获得实例工厂 *javax.xml.parsers.DocumentBuilderFactory
    DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
    //获得解析 *javax.xml.parsers.DocumentBuilderFactory
    DocumentBuilder builder = factory.newDocumentBuilder();
    //获得document --解析xml文档 java.io.FileNotFoundException *org.w3c.dom.Document
    Document document = builder.parse("books.xml"); //指java项目的根路径下的文件

    2、获得需要的内容:获得所有的书籍
    //获得所有的书籍元素
    NodeList bookElements = document.getElementsByTagName("book");

    3、遍历
    * 获得长度
    bookElements.getLength()
    * 获得指索引的节点
    bookElements.item(i);
    * 通过元素获得,当前元素指定的属性
    Element.getAttribute("id");
    * 获得当前节点的名称
    Node.getNodeName();
    * 获得当前节点的子节点的所有文本
    Node.getTextContent()
    * 例如:<book><title>Java</title></book> --> 字符串"<title>Java</title>"


    二、保存
    //获得持久化对象实例工厂
    TransformerFactory factory = TransformerFactory.newInstance();

    //获得持久化对象
    Transformer transformer = factory.newTransformer();
    //将内存数据,保存到硬盘

    //源:document 将document封装到Source
    Source xmlSource = new DOMSource(document);
    //结果:books.jasp.xml 将“文件路径”封装到Result
    Result outputTarget = new StreamResult("books.jasp.xml");
    transformer.transform(xmlSource, outputTarget);

  • 相关阅读:
    rdesktop ERROR: CredSSP: Initialize failed, do you have correct kerberos tgt initialized ? Failed to connect, CredSSP required by server
    nginx 服务器重启命令,关闭
    Libvirt磁盘加密
    qemu-nbd使用教程
    交叉编译Spice-gtk
    通过Python调用Spice-gtk
    远程桌面连接KVM虚拟机
    虚拟创建失败之Dbus调试
    Libvirt代码架构
    Libvirt外部快照
  • 原文地址:https://www.cnblogs.com/xulimessage/p/4837577.html
Copyright © 2011-2022 走看看