`
zhangfeilo
  • 浏览: 399775 次
  • 性别: Icon_minigender_1
  • 来自: 昆明
社区版块
存档分类
最新评论

JDOM 对Xml文件(增、删、改、查)

阅读更多
package bean;


import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.List;

import org.jdom.Document;
import org.jdom.Element;
import org.jdom.JDOMException;
import org.jdom.input.SAXBuilder;
import org.jdom.output.XMLOutputter;

/**
 * 邵波 QQ:343269876
 */
public class XmlParse {

 
 //解析xml文件
 
 public static void XmlParse() throws JDOMException, IOException {
  SAXBuilder builder = new SAXBuilder();
  InputStream file = new FileInputStream("src/xml/po.xml");
  Document document = builder.build(file);//获得文档对象
  Element root = document.getRootElement();//获得根节点
  List<Element> list = root.getChildren();
  for(Element e:list) {
   System.out.println("ID="+e.getAttributeValue("id"));
   System.out.println("username="+e.getChildText("username"));
   System.out.println("password="+e.getChildText("password"));
  }
 }
 
 //增
 public static void addXml() throws JDOMException, FileNotFoundException, IOException {
  SAXBuilder builder = new SAXBuilder();
  Document doc = builder.build("src/xml/po.xml");//获得文档对象
  Element root = doc.getRootElement();//获得根节点
  
  //添加新元素
  Element element = new Element("person");
  element.setAttribute("id", "3");
  Element element1 = new Element("username");
  element1.setText("zhangdaihao");
  Element element2 = new Element("password");
  element2.setText("mima");
  element.addContent(element1);
  element.addContent(element2);
  root.addContent(element);
  doc.setRootElement(root);
  
  //文件处理
  XMLOutputter out = new XMLOutputter();
  out.output(doc, new FileOutputStream("src/xml/po.xml"));
 }
 
 //根据ID值删除一个节点 
 public static void deletePerson(int id) throws JDOMException, IOException {
  SAXBuilder builder = new SAXBuilder();
  InputStream file = new FileInputStream("src/xml/po.xml");
  Document doc = builder.build(file);//获得文档对象
  Element root = doc.getRootElement();//获得根节点
  List<Element> list = root.getChildren();
  for(Element e:list) {
   //获取ID值
   if(Integer.parseInt(e.getAttributeValue("id"))==id) {
    root.removeContent(e);
    break;//??
   }
  }
  
  //文件处理
  XMLOutputter out = new XMLOutputter();
  out.output(doc, new FileOutputStream("src/xml/po.xml"));
 }
 
 //根据ID值修改一个节点 
 public static void updatePerson(int id) throws JDOMException, IOException {
  SAXBuilder builder = new SAXBuilder();
  InputStream file = new FileInputStream("src/xml/po.xml");
  Document doc = builder.build(file);//获得文档对象
  Element root = doc.getRootElement();//获得根节点
  List<Element> list = root.getChildren();
  for(Element e:list) {
   //获取ID值

//e.getChild(idname).getText().equals(idvalue)

   if(Integer.parseInt(e.getAttributeValue("id"))==id) {
    System.out.println("--------------------");
    e.getChild("username").setText("111111111");
    e.getChild("password").setText("password");
    
   }
  }
  
  //文件处理
  XMLOutputter out = new XMLOutputter();
  out.output(doc, new FileOutputStream("src/xml/po.xml"));
 }
 
 static public void main(String ars[]) throws JDOMException, IOException {
  
 // addXml();//增加XML
 // deletePerson(3);//删除XML
 // updatePerson(2);//修改XML
 // XmlParse();//解析XML
 }
}


 
<?xml version="1.0" encoding="UTF-8"?>
<root>
 <person id="1">
  <username>张三</username>
  <password>123123</password>
 </person>
 <person id="2">
  <username>1111111112</username>
  <password>password2</password>
 </person>

 
</root>
 
分享到:
评论
1 楼 jspc 2011-11-26  
好的,了解了,

相关推荐

    jdom 操作XML实现增删改查

    本篇文章将详细介绍如何利用JDOM库在Java中实现XML的增删改查操作。 一、XML的基本结构与JDOM解析 XML文档由元素(Element)、属性(Attribute)、文本内容(Text)等组成。JDOM通过SAX和DOM两种方式解析XML文档。...

    java xml增删改查多种方法

    本篇文章将详细探讨Java对XML文档进行增删改查的多种方法。 1. **解析XML文档** 在Java中,解析XML主要有DOM(Document Object Model)、SAX(Simple API for XML)和StAX(Streaming API for XML)三种方式。 ...

    Xml_Factory.zip_factory_sax_xml的增删改查

    然而,SAX不提供直接的文档遍历,需要开发者编写事件处理器来实现增删改查功能,相对DOM和JDOM来说,编程复杂度稍高。 4. DOM4J DOM4J是另一个Java XML处理库,它结合了DOM和SAX的优点。DOM4J提供了简洁的API,同时...

    完整的jdom增删改查

    在"完整的jdom增删改查"这个主题中,我们将深入探讨如何使用JDOM来执行XML文档的基本操作,包括创建(Create)、读取(Read)、更新(Update)和删除(Delete),这通常被称为CRUD操作。 1. 创建(Create): 创建...

    用dom4j对xml进行增删改查操作参考资料

    它提供了简单而直观的API,使得在Java中对XML进行增删改查变得容易。本文将详细介绍如何使用DOM4J进行XML的操作。 首先,我们需要理解XML的基本概念。XML(可扩展标记语言)是一种用于存储和传输数据的标准格式,它...

    XML文件增、删、改、查示例

    通过这个XML增、删、改、查的示例,我们可以更好地理解XML文档的动态操作,并掌握如何利用Java等编程语言进行处理。实际应用中,这些技能对于数据交换、配置文件管理以及任何需要与XML数据交互的场景都至关重要。

    xml-EXAM.rar_3dm_CQIC_xml增删改查

    本教程"xml-EXAM.rar_3dm_CQIC_xml增删改查"聚焦于使用Java处理XML文件,实现基本的数据操作:增加、删除、修改和查询。 首先,让我们理解XML的基本结构。XML文档由元素构成,元素是XML的最基本单位,用来封装数据...

    java操作xml增删改查.pdf

    "Java 操作 XML 增删改查" 在 Java 中操作 XML 文档有多种方式,常见的有 DOM、DOM4J、JDOM 和 SAX。...这个示例代码使用 DOM 方式来操作 XML 文档,获取 XML 文档对象,并可以对其进行增删改查操作。

    java操作xml增删改查.doc

    Java 操作 XML 文件主要包括四种方式:DOM、JDOM、DOM4J 和 SAX。每种方法都有其特定的优势和适用场景。 1. DOM (Document Object Model):DOM 是一种 W3C 标准,提供了一种将整个 XML 文档加载到内存中的模型,...

    jdom增,删,改,解析

    在本文中,我们将深入探讨JDOM的核心概念、如何进行XML的增删改查操作以及相关的最佳实践。 ### 一、JDOM的基本概念 1. **Document**: XML文档的根节点,代表整个XML结构。 2. **Element**: XML文档中的元素,可以...

    jdom操作xml的文档

    **JDOM 操作 XML 文档详解** XML (eXtensible Markup Language) 是一种用于标记数据的语言,广泛应用于数据交换、配置文件等场景。而 JDOM(Java Document Object Model)是一个专门为 Java 设计的 XML 处理库,它...

    java xml.java操作XML文档

    Java XML API是Java平台上的...通过这些API,开发者可以根据需求选择最适合的XML处理方式,不论是小型还是大型XML文件,都能有效地进行操作。在实际项目中,合理选择和组合使用这些API,能够提高代码的效率和可维护性。

    jdom.rar内含多个jdom包

    2. **操作XML**:对`Document`对象进行增删改查,比如修改`Element`的属性,添加子元素等。 3. **输出XML**:使用`XMLOutputter`类将`Document`对象转换回XML字符串或写入文件。 JDOM还支持XPath表达式,允许开发者...

    JDOM实现从数据库读取字段生成XML树

    这使得我们可以方便地通过Java代码对XML文档进行增删改查。JDOM提供了两种主要的构建方式:SAXBuilder和DOMBuilder。SAXBuilder适用于大型XML文件,因为它基于事件驱动,占用内存较少;DOMBuilder则适用于小到中型的...

    jdom(1.0和1.1完整包)

    2. **操作XML**: 通过`Element`、`Attribute`等类对`Document`进行增删改查操作。 3. **序列化XML**: 将修改后的`Document`对象转换回XML字符串,可以使用`XMLOutputter`完成此任务。 在压缩包中,`jdom-1.0`和`...

    JDOM软件下载

    3. **操作XML**:通过Element、Attribute和Text对象,JDOM提供了丰富的API来进行XML文档的增删改查操作。例如,可以轻松添加、删除或修改元素、属性及其值。 4. **序列化**:JDOM可以将构建好的XML Document对象...

    JSP实现对XML读写

    例如,可以创建一个新的XML文档,或者读取已有的XML文件,然后对其中的元素进行增删改查操作。JDOM的API设计旨在减少代码量,提高开发效率,让XML处理更加便捷。 总结来说,JSP实现对XML的读写涉及了XML的基本概念...

    JDOM帮助文档以及使用教程

    3. **操作XML**:对`Document`对象进行增删改查操作,如添加元素、修改属性值、删除元素等。 4. **保存XML文档**:最后,通过`Transformer`将`Document`对象转换回XML字符串或写入文件。 **五、JDOM API简要介绍** ...

Global site tag (gtag.js) - Google Analytics