JAVA XML文件读取

2018-09-09  本文已影响14人  东先生丶

简介

可扩展标记语言,简称XML(Extensible Markup Language),是一种标记语言。标记指计算机所能理解的信息符号,通过此种标记,计算机之间可以处理包含各种信息的文章等。如何定义这些标记,既可以选择国际通用的标记语言,比如HTML,也可以使用像XML这样由相关人士自由决定的标记语言,这就是语言的可扩展性。XML是从标准通用标记语言(SGML)中简化修改出来的。它主要用到的有可扩展标记语言、可扩展样式语言(XSL)、XBRL和XPath等。

xml文件读取一般有4种

DOM

SAX

JDOM

DOM4J

DOM4J

需要导包 dom4j-1.6.1.jar https://sourceforge.net/projects/dom4j/files/

package dom4j;

import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;

import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.XMLWriter;

public class Dom4jCreateXml {
    public static void main(String[] args) throws  Exception {
        //得到文档对象
        Document d = DocumentHelper.createDocument();
        //添加根节点
        Element root = d.addElement("users");
        
        for(int i=1;i<=3;i++){
        //创建子节点
        Element user = root.addElement("user");
        user.addAttribute("id", ""+i);
        //创建二级子节点
        Element name = user.addElement("name");
        name.setText("张三"+i);
        
        //创建二级子节点
        Element sex = user.addElement("sex");
        sex.setText("男");
        
    }
        //写文件
        OutputStream os = new FileOutputStream("e:/AA.xml");
        XMLWriter write = new XMLWriter(os);
        write.write(d);
        write.close();
    }
}
package dom4j;

import java.io.FileOutputStream;
import java.io.OutputStream;
import java.util.List;

import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter;

public class Dom4jModifyXml {

public static void main(String[] args) throws Exception {
        //先读取
        SAXReader reader = new SAXReader();
        Document d = reader.read("F:/AA.xml");
        Element root = d.getRootElement();
        System.out.println(root.getName());
        
        List<Element> list = root.elements();
         //修改
        for (Element e : list) {
            System.out.println(e.getName());
            Element name = e.element("name");
             
            Element sex = e.element("sex");
            //移除
            sex.getParent().remove(sex); 
        } 
         
        //保存到文件
        OutputStream os = new FileOutputStream("F:/AA.xml");
        XMLWriter write = new XMLWriter(os);
        write.write(d);
        write.close();
    }
}

package dom4j;

import java.util.List;

import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;

public class Dom4jParseXml {
    public static void main(String[] args) throws Exception {
        
        SAXReader reader = new SAXReader();
        Document d = reader.read("F:/AA.xml");
        Element root = d.getRootElement();
        System.out.println(root.getName());
        
        List<Element> list = root.elements();
         
        for (Element e : list) {
            System.out.println(e.getName());
            Element name = e.element("name");
            System.out.println("name--"+name.getData());
            Element sex = e.element("sex");
            System.out.println("sex--"+sex.getData());
        }
    }
}

未完。。。

上一篇下一篇

猜你喜欢

热点阅读