zoukankan      html  css  js  c++  java
  • DOM4J

    1.DOM4J解析XML

    public class TestXml {
    
        public static void main(String[] args) throws Exception {
            //创建SAXReader对象,用于读取xml文件
            SAXReader reader = new SAXReader();
            //读取xml文件,得到Document对象
            Document doc = (Document) reader.read(new File("src/scores.xml"));
            //获取根元素
            Element root = doc.getRootElement();
            //获取根元素下所有子元素
            Iterator<Element> it = root.elementIterator();
            while(it.hasNext()){
                //取出元素
                Element e = it.next();
                System.out.println(e.getName());
                //获取id属性(可以使用迭代器)
                Attribute id = (Attribute) e.attribute("id");
                System.out.println(id.getName() + "=" +id.getValue());
                //获取student的子元素
                Element name = e.element("name");
                Element course = e.element("course");
                Element score = e.element("score");
                //打印
                System.out.println(name.getName()+ "=" +name.getStringValue());
                System.out.println(course.getName() + "=" + course.getText());
                System.out.println(score.getName() + "=" + score.getText());
                System.out.println("-----------------------");
            }
        }
    
    }

    2.DOM4J生成XML文件

    public class TestXml2 {
        public static void main(String[] args) throws Exception {
            //通过DocumentHelper生成一个Document对象
            Document doc = DocumentHelper.createDocument();
            //添加并得到根元素
            Element root = doc.addElement("books");
            //为根元素添加子元素
            Element book = root.addElement("book");
            //为book元素添加属性,可以链式编程
            book.addAttribute("id", "b01");
            //为book添加子元素
            Element name = book.addElement("name");
            Element auther = book.addElement("auther");
            Element price = book.addElement("price");
            //为子元素添加文件
            name.addText("Thinking in Java");
            auther.addText("张三");
            price.addText("88");
            /*
         //将doc输出到xml文件中 Writer writer = new FileWriter(new File("src/book.xml")); doc.write(writer); //关闭资源 writer.close();
         
    */ //格式良好的输出 OutputFormat format = OutputFormat.createPrettyPrint(); XMLWriter writer = new XMLWriter(new FileWriter(new File("src/book.xml")), format); writer.write(doc); //关闭资源 writer.close(); } }
  • 相关阅读:
    作为一个 .NET 开发者 应该了解哪些知识?
    服务器扩容,新加一上硬盘,是否要重做raid
    DB2常见错误
    Eclipse快捷键与Notepad++ 快捷建冲突的问题
    Java+MySql图片数据保存
    也谈设计模式Facade
    MyBatis入门级Demo
    Python中的字符串与字符编码
    Python流程控制语句
    Python中的运算符
  • 原文地址:https://www.cnblogs.com/mxj961116/p/11003413.html
Copyright © 2011-2022 走看看