zoukankan      html  css  js  c++  java
  • JavaEE XML的读写(利用JDom对XML文件进行读写)

    1.有关XML的写

    利用JDom2包,JDom2这个包中,至少引入org.jdom2.*;如果要进行XML文件的写出,则要进行导入org.jdom2.output.*;

    package com.littlepage.test1;
    
    import java.io.*;
    import org.jdom2.*;
    import org.jdom2.output.*;
    
    public class Test3 {
        public static void main(String[] args) {
            try {
                Element rootElement = new Element("rootElement");
                Document document = new Document(rootElement);
                rootElement.addContent(new Element("student1").addContent(new Element("name").addContent("Jack")).setAttribute("type","transfer student"));
                rootElement.addContent(new Element("student1").addContent(new Element("name").addContent("Nancy")));
                rootElement.addContent(new Element("student1").addContent(new Element("name").addContent("Lucy")));
                XMLOutputter xop = new XMLOutputter();
                //设置间距
                XMLOutputter out=new XMLOutputter();
                Format format=out.getFormat();
                format.setEncoding("GB2312");
                format.setIndent("
    	");
                out.setFormat(format);
                xop.output(document, new FileWriter("student.xml"));
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }

    XML文件写入结果

    <?xml version="1.0" encoding="UTF-8"?>
    <rootElement>
        <student1 type="transfer student">
            <name>Jack</name>
        </student1>
        <student1>
            <name>Nancy</name>
        </student1>
        <student1>
            <name>Lucy</name>
        </student1>
    </rootElement>

    2.有关XML文件的读

    利用SAXBuilder,SAXBuilder在org.xml.input.*;中存在方法SAXBuilder,SAXBuilder是进行XML文件读入的一个类

    //递归打印XML的document
    public class Test4 {
        public static void main(String[] args) {
            try{
                Document document=new SAXBuilder().build("MyXML.xml");
                Element rootElement=document.getRootElement();
                recursionXML(rootElement);
            }catch(IOException|JDOMException e){
                e.printStackTrace();
            }
            
        }
        /**
         * recursion XML,for print the root element
         * @param element
         */
        public static void recursionXML(Element element){
            System.out.println(element.getName()+":"+element.getText());
            if(!element.getChildren().isEmpty()){
                List<Element> li=element.getChildren();
                for (Element element2 : li) {
                    recursionXML(element2);
                }
            }
        }
       /
    }
  • 相关阅读:
    Hibernate>查询缓存 小强斋
    hibernate>抓取策略 小强斋
    Spring>环境 及 为什么使用spring 小强斋
    Hibernate>一级缓存 小强斋
    Spring>环境 及 为什么使用spring 小强斋
    【设计模式系列】OO设计原则之LSPLiskov替换原则
    【设计模式系列】OO设计原则之SRP单一职责原则
    【Android】选项卡使用
    【人生】不管你挣多少, 钱永远是问题
    【设计模式系列】序
  • 原文地址:https://www.cnblogs.com/littlepage/p/10492388.html
Copyright © 2011-2022 走看看