JDOM读写XML的例子

原创 2005年02月27日 02:28:00
效果: 从1.xml中读入并修改, 然后写入2.xml, 两个xml文档如下

1.xml
--------------------------------------
<?xml version="1.0" encoding="gb2312"?>
<total>
 <item name="item 1">
  <sub>sub item 1</sub>
 </item>
 <item name="item 2">
  <sub>sub item 2</sub>
 </item>
</total>

2.xml
--------------------------------------
<?xml version="1.0" encoding="gb2312"?>
<total>
 <item started="true" name="new item">
  <sub>new item0</sub>
 </item>
 <item name="item 2">
  <sub>new item1</sub>
 </item>
</total>
/**
 * 测试类, 演示如何使用JDOM对XML文档读写
 *
 * Delfan, 2002-11-17
 * http://www.delfan.com
 */
package com.test;

import org.jdom.*;
import org.jdom.output.*;
import org.jdom.input.*;

import java.io.*;
import java.util.List;


public class JDomeSample
{
  public static void main(String[] args) throws Exception // 如果有任何异常则抛出
  {
    SAXBuilder sb = new SAXBuilder(); // 新建立构造器
    Document doc = sb.build(new FileInputStream("1.xml")); // 读入1.xml

    Element root = doc.getRootElement(); // 取得根节点, 就是例子中的<total>节点
    List list = root.getChildren(); // 取得根节点下一层所有节点放入List类中

    for(int i=0; i<list.size(); i++)
    {
      System.out.println("-------------------------");
      Element item = (Element)list.get(i); // 取得节点实例
      String name = item.getAttribute("name").getValue(); // 取得属性的值
      System.out.println("NAME-->"+name);

      Element sub = item.getChild("sub"); // 取得当前节点的指定子节点
      String text = sub.getText(); // 取得指定子节点的内容
      System.out.println("SUB-->"+text);
      sub.setText("new item"+String.valueOf(i) ); // 改变子节点的内容
    }

    Element item = (Element)list.get(0); // 取得根节点下第一个子节点

    Attribute a = new Attribute("started","true"); // 增加一个新的属性
    item.addAttribute(a);
    item.setAttribute("name","new item"); // 改变旧的属性值
    String indent = ""; // 缩进符号
    boolean newLines = false; // 是否产生新行
    XMLOutputter outp = new XMLOutputter (indent,newLines,"gb2312"); // 构造新的输出流
    outp.output(doc, new FileOutputStream("2.xml")); // 输出到2.XML文件中
  }
}

 

相关文章推荐

DOM、SAX、JDOM、DOM4J读写xml文档

  • 2015年12月04日 19:42
  • 16KB
  • 下载

JAVA_xml读写(jdom包)

  • 2010年11月16日 00:21
  • 142KB
  • 下载

XML读写之JDOM

本文先使用JDOM方式写一个简单地小例子,亲测可以运行,然后在末尾分析其优缺点。   我们知道,DOM的设计为了适用于不同的语言,它保留了不同语言中非常相似的API。但是它并不适合于Java编程者的...

用SAX、DOM、JDOM和DOM4J读写XML文件

package com.mipo.xml.demo1; import java.io.File; import java.io.FileWriter; import java.io.IOExcept...

XML例子和读写

  • 2012年07月04日 17:08
  • 748KB
  • 下载

JDom读取xml文件例子

xml文件如下:   8G 200 1580 10G 500 3000 读取文件...

直接读写XML文件 (例子和代码)

  • 2006年01月13日 09:51
  • 238KB
  • 下载

pb的xml读写例子

  • 2010年10月19日 09:22
  • 58KB
  • 下载

php SimpleXML读写XML接口文件例子分析

创建一个SimpleXML对象有三种方法: 使用new关键字创建  代码如下 复制代码 $xml="1aaa16 2bbb26"; $rss=new S...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JDOM读写XML的例子
举报原因:
原因补充:

(最多只允许输入30个字)