XML入门之二:Jdom2的写入和读取操作
来源:互联网 发布:知美术馆官网 电话 编辑:程序博客网 时间:2024/06/02 00:05
注:
我用的jdom版本是jdom-2.0.3,所以包名称对应的都是jdom2.*
如果用的是1.x 包名称对应的是jdom.*
package com.rt.jdom;import java.io.*;import java.util.List;import org.jdom2.*;import org.jdom2.output.*;import org.jdom2.input.*;public class JDOM_Demo {public static void main(String[] args) {jdomWriter();//1.先写入try {jdomReader();//2.后读取} catch (Exception e) {e.printStackTrace();}}public static void jdomWriter(){//一:顶级节点Element topTree = new Element("topTree");Document doc = new Document(topTree);//将顶级节点(唯一一个)设置进Document Comment ttComment = new Comment("测试将数据从程序输出到XML中");//创建注释 topTree.addContent(ttComment); //二:子节点1Element subTree1 = new Element("subTree");Attribute ab1 = new Attribute("ab","attributeOfsubTree1");//子节点属性subTree1.setAttribute(ab1);Element object1 = new Element("object1");//子节点信息Element object2 = new Element("object2");Element object3 = new Element("object3");object1.setText("valueOfObj1");object2.setText("valueOfObj2");object3.setText("valueOfObj3");topTree.addContent(subTree1);//与上级节点(顶级节点)关系subTree1.addContent(object1);subTree1.addContent(object2);subTree1.addContent(object3);//三:子节点2Element subTree2 = new Element("subTree");Attribute ab2 = new Attribute("ab","attributeOfsubTree2");//子节点属性subTree2.setAttribute(ab2);Element object4 = new Element("object1");//子节点信息Element object5 = new Element("object2");Element object6 = new Element("object3");object4.setText("valueOfObj4");//!!!注意不能再用object1对象,否则会出现不能加入上级节点的错误object5.setText("valueOfObj5");object6.setText("valueOfObj6");topTree.addContent(subTree2);//与上级节点(顶级节点)关系subTree2.addContent(object4);subTree2.addContent(object5);subTree2.addContent(object6);//四:将上述内容写入XMLXMLOutputter out = new XMLOutputter();out.setFormat(out.getFormat().setEncoding("GBK"));try {out.output(doc, new FileOutputStream(new File("e:/jdom_demo1.xml")));} catch (Exception e) {e.printStackTrace();}}public static void jdomReader() throws Exception{SAXBuilder builder = new SAXBuilder();Document read_doc = builder.build(new File("e:/jdom_demo1.xml"));Element root = read_doc.getRootElement(); //取得根节点List<?> list = root.getChildren("subTree");for(int i=0;i<list.size();i++){Element e = (Element)list.get(i);//取得子节点String obj1 = e.getChildText("object1");String obj2 = e.getChildText("object2");String obj3 = e.getChildText("object3");System.out.println("No."+i);System.out.println("object1=> "+obj1);System.out.println("object2=> "+obj2);System.out.println("object3=> "+obj3);System.out.println("---------------");}}}
生成的XML如下:
<topTree>
<!-- 测试将数据从程序输出到XML中 -->
<subTree ab="attributeOfsubTree1">
<object1>valueOfObj1</object1>
<object2>valueOfObj2</object2>
<object3>valueOfObj3</object3>
</subTree>
<subTree ab="attributeOfsubTree2">
<object1>valueOfObj4</object1>
<object2>valueOfObj5</object2>
<object3>valueOfObj6</object3>
</subTree>
</topTree>
- XML入门之二:Jdom2的写入和读取操作
- XML入门之三:DOM4J的写入和读取操作
- 利用JDOM2读取XML数据
- php操作XML,读取数据和写入数据的方法
- php操作XML,读取数据和写入数据的方法
- JDOM2.0.5版本通过xpath读取xml或读取带有命名空间的xml
- xml读取和写入
- PDA中XML的读取和写入
- Qt XML读取写入操作
- C#笔记 通用文件的存取之二——XML文件的读取与写入
- 使用xmltextreader对xml进行简单的读取和写入操作
- 关于XML文档读取写入的简单操作
- qt中关于xml的读取、写入、修改等操作
- XML文件写入和读取
- OpenCV XML和YAML文件的写入和读取
- Andorid Xml的写入与读取之PULL解析器
- xml读取和写入---------xml学习笔记
- java读取xml和xml写入数据
- 项目管理之任务分配
- 链式二叉树的遍历【郝斌版】
- C语言中如何使用宏
- jni
- waiting for debugger
- XML入门之二:Jdom2的写入和读取操作
- char和vchar,varchar和nvarchar的区别
- javaSE学习笔记3
- 怎么使用ST的库开发STM32
- 你真的了解javascript中的null和undefined吗
- Ubuntu 解压 命令集
- Java线程_03
- 在用^交换a,b值时操作地址和操作值的区别
- Java参数传递过程中 传形参和传引用问题讨论