• JDOM读取xml


    【摘 要】JDOM是一个开源项目,它基于树型结构,利用纯JAVA的技术对XML文档实现解析、生成、序列化以及多种操作。

    一、JDOM 简介

    JDOM是一个开源项目,它基于树型结构,利用纯JAVA的技术对XML文档实现解析、生成、序列化以及多种操作。

    JDOM 直接为JAVA编程服务。它利用更为强有力的JAVA语言的诸多特性(方法重载、集合概念以及映射),把SAX和DOM的功能有效地结合起来。

    在使用设计上尽可能地隐藏原来使用XML过程中的复杂性。利用JDOM处理XML文档将是一件轻松、简单的事。

    JDOM 在2000年的春天被Brett McLaughlin和Jason Hunter开发出来,以弥补DOM及SAX在实际应用当中的不足之处。

    这些不足之处主要在于SAX没有文档修改、随机访问以及输出的功能,而对于DOM来说,JAVA程序员在使用时来用起来总觉得不太方便。

    DOM的缺点主要是来自于由于Dom是一个接口定义语言(IDL),它的任务是在不同语言实现中的一 个最低的通用标准,并不是为JAVA特别设计的。JDOM的最新版本为JDOM Beta 9。最近JDOM被收录到JSR-102内,这标志着JDOM成为了JAVA平台组成的一部分

    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.util.*;
    
    import org.jdom.*;
    import org.jdom.input.SAXBuilder;
    import org.jdom.output.XMLOutputter;
    public class Sample {
         public static void main(String[] args) {
            //使用jdom 要选择解析器,这里使用默认的解析器
            SAXBuilder builder=new SAXBuilder(false);
            try {
                //构造文档对象
                String xmlpath="text.xml";
                //得到Document 后面所有操作都是对doc的操作
                Document doc=builder.build(xmlpath); 
                //获取根元素
                Element books=doc.getRootElement();
                //获取名字为book的元素的集合
                List booklist=books.getChildren("book");
                //轮训booklist集合
                for (Iterator iter = booklist.iterator(); iter.hasNext();) {
                    Element book = (Element) iter.next();
                    //获取元素的属性
                    String email=book.getAttributeValue("email");
                    System.out.println(email);
                    String name=book.getChildTextTrim("name");
                    System.out.println(name);
                    //改变元素的值
                    book.getChild("name").setText("alterrjzjh");
                    
                }
                //保存上述的修改到xml中
                XMLOutputter outputter=new XMLOutputter();
                outputter.output(doc,new FileOutputStream(xmlpath));
                
            } catch (JDOMException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }
        } 
    }
    <?xml version="1.0" encoding="UTF-8"?>
    <books>
       <book email="zhoujunhui">
         <name>alterrjzjh</name>
         <price>60.0</price>
      </book>
    </books>
  • 相关阅读:
    svn服务器安装
    查看IIS应用程序池的运行状况
    Microsoft Web Farm Framework 和 server Farms
    Subversion 错误信息一览表
    LINUX 时间和日期
    DiskGenius的 “终止位置参数溢出”错误解决方法。
    TortoiseSVN在网盘显示图标的设置
    配置GDB以支持查看stl容器数据
    TortoiseSVN,排除不想提交文件的方法
    win7系统 设置宽带连接网络共享 出现错误 无法启用共享访问 错误代码:0x80004005:未指定错误
  • 原文地址:https://www.cnblogs.com/batman425/p/7450533.html
Copyright © 2020-2023  润新知