- 浏览: 405978 次
- 性别:
- 来自: 天津
文章分类
最新评论
-
junchao_qin:
[img][flash=200,200][url][img]引 ...
MyEclipse中使用VSS插件 -
tigerwood008:
IE11不好用!!
js弹出窗口 + 获取上传文件全路径 -
TheMatrix:
$.ajaxSetup({async : false});这种 ...
jquery 中的post和get方法如何同步 -
多多成长记:
Blazeds与java通信 -
ZED.CWT:
[align=ceiinter][/align]
java中利用JFrame创建窗体 【转】
转自http://qingbyqing.iteye.com/blog/978113
1.解析xml
- package com.qingbyqing.xmlParse;
- import java.io.IOException;
- import java.util.List;
- import org.jdom.Attribute;
- import org.jdom.Document;
- import org.jdom.Element;
- import org.jdom.JDOMException;
- import org.jdom.input.SAXBuilder;
- /**
- * 解析xml
- * @author qingbyqing
- * @date 2011-3-29
- */
- public class XmlPasreUtil {
- Element root=null ;
- Document doc=null ;
- /**
- * 获得根元素
- * @param fileName 用于指定的xml文件名
- * @return
- */
- public Element getRoot(String fileName){
- //1.创建解析对象
- //2.解析对象调用build方法建立文档对象
- //3.文档对象获得根元素
- SAXBuilder builder = new SAXBuilder( false );
- try {
- doc = builder.build(fileName);
- } catch (JDOMException e) {
- e.printStackTrace();
- } catch (IOException e) {
- e.printStackTrace();
- }
- Element root = doc.getRootElement();
- return root;
- }
- /**
- * 获取xml的所有信息
- * @param root 传入一个根元素对象
- */
- public void getElementInfo(Element root){
- //遍历跟元素
- List<?> flist = root.getChildren("floor" );
- for ( int i= 0 ;i<flist.size();i++){
- Element floor =(Element) flist.get(i);
- String level = floor.getAttributeValue("level" );
- p("第" +level+ "层" );
- List<?> rlist = floor.getChildren("room" );
- for ( int j= 0 ;j<rlist.size();j++){
- Element room = (Element)rlist.get(j);
- String id=room.getAttributeValue("id" );
- String rep=room.getChild("represent" ).getText();
- String tel=room.getChild("telephone" ).getText();
- p("寝室编号:" +id+ " 负责人:" +rep+ " 寝室号码:" +tel);
- }
- }
- }
- /**
- * @param args
- */
- public static void main(String[] args) {
- XmlPasreUtil pasre = new XmlPasreUtil();
- Element root=pasre.getRoot("I:\\xml\\flats.xml" );
- pasre.getElementInfo(root);
- }
- public void p(String str){
- System.out.println(str);
- }
- }
[img]
[/img]
2.创建xml
- package com.qingbyqing.xmlParse;
- import java.io.FileWriter;
- import java.io.IOException;
- import org.jdom.Attribute;
- import org.jdom.Comment;
- import org.jdom.Document;
- import org.jdom.Element;
- import org.jdom.output.Format;
- import org.jdom.output.XMLOutputter;
- /**
- * 创建一个xml
- * @author qingbyqing
- * @date 2011-3-29
- */
- public class XmlCreateUtil {
- Element root=null ; //跟元素
- Document doc=null ; //文档对象
- /**
- * 创建xml
- * @param ajax
- */
- public void createRootElement(String[] ajaxs){
- //1.根据数组创建跟元素
- //2.建立解释内容
- //3.建立子元素
- root = new Element( "ajax" );
- //建立解释内容
- Comment comment = new Comment( "简单的xml示例" );
- root.addContent(comment);
- //建立子元素
- for ( int i= 0 ;i<ajaxs.length;i++){
- Element ajax = new Element( "ajax" ); //子元素标签
- ajax.addContent(ajaxs[i]);//子元素内容
- Attribute id = new Attribute( "id" , new Integer(i).toString()); //子元素属性
- ajax.setAttribute(id);
- root.addContent(ajax);
- }
- }
- public void outputXml(String fileName){
- //1.根据跟元素创建文档
- //2.创建输出对象
- //3.创建输出格式对象
- //4.格式化文档
- //5.创建文件输出对象
- //6.输出对象
- doc =new Document(root);
- XMLOutputter out = new XMLOutputter();
- Format format = Format.getPrettyFormat();
- //设置输出格式
- format.setIndent(" " );
- format.setEncoding("gbk" );
- out.setFormat(format);
- try {
- FileWriter fwt = new FileWriter(fileName);
- out.output(doc, fwt);
- fwt.flush();
- fwt.close();
- } catch (IOException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
- public static void main(String args[]){
- String[] ajaxs={"JAVASCRIPT" , "HTML" , "CSS" , "DOM" , "XMLHTTPREQUEST" };
- XmlCreateUtil cu = new XmlCreateUtil();
- cu.createRootElement(ajaxs);
- cu.outputXml("I:\\xml\\ajaxs.xml" );
- }
- }
[img]
[/img]
3.修改xml
- package com.qingbyqing.xmlParse;
- import java.io.FileWriter;
- import java.io.IOException;
- import org.jdom.Document;
- import org.jdom.Element;
- import org.jdom.JDOMException;
- import org.jdom.input.SAXBuilder;
- import org.jdom.output.Format;
- import org.jdom.output.XMLOutputter;
- /**
- * 对xml进行修改删除
- * @author qingbyqing
- * @date 2011-3-29
- */
- public class XmlMendUtil {
- private Document doc= null ;
- //根据需要修改的文件创建文档
- public void setRootNode(String fileName){
- SAXBuilder builder = new SAXBuilder();
- try {
- doc=builder.build(fileName);
- } catch (JDOMException e) {
- e.printStackTrace();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- public void mendXml(){
- if (doc!= null ){
- Element root = doc.getRootElement();
- root.removeContent(root.getChildren().size()-1 ); //删除最后一个元素
- //删除第一个元素下的id属性
- root.getChild("ajax" ).setAttribute( "id" , "3" );
- root.getChild("ajax" ).removeContent();
- //修改第二个元素的内容为:DHTML
- root.getChild("ajax" ).addContent( "DTML" );
- }
- return ;
- }
- public void outputXML(String fileName){
- XMLOutputter out=new XMLOutputter();
- Format format = Format.getPrettyFormat();
- format.setEncoding("UTF-8" );
- format.setIndent(" " );
- out.setFormat(format);
- try {
- FileWriter fwt = new FileWriter(fileName);
- out.output(doc, fwt);
- fwt.flush();
- fwt.close();
- } catch (IOException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
- /**
- * @param args
- */
- public static void main(String[] args) {
- XmlMendUtil mend=new XmlMendUtil();
- mend.setRootNode("I:\\xml\\ajaxs.xml" );
- mend.mendXml();
- mend.outputXML("I:\\xml\\mended.xml" );
- }
- }
[img]
[/img]
生成如下文件
[/img]
将jdom-jar导入到项目中去:
[img]
[/img]
发表评论
-
判断二叉树是否平衡及计算二叉树深度和结点个数
2012-09-01 10:12 7727参考:http://blog.csdn.net/zz19880 ... -
【转】java实现二叉查找树
2012-08-31 09:44 1544转自:http://blog.csdn.net/zyj817 ... -
二叉树及其遍历
2012-08-21 09:50 1564转自:http://www.iteye.com/t ... -
java栈中缀表达式转为后缀表达式
2012-07-19 11:33 2470思路: 遇到数字,则输出。 遇到操作符,入栈,在入栈前若该 ... -
java栈实现括号匹配
2012-07-19 09:48 4542算法思想: 做一个空栈,读入字符。 若字符是左运算符,则入 ... -
【转】java静态变量和实例变量的区别
2012-06-20 11:02 1342转自:http://www.2cto.com/kf/20100 ... -
【转】java中会存在内存泄漏吗,请简单描述。
2012-06-20 10:24 1388java中 ... -
【转】java匿名内部类2
2012-06-12 13:45 1265匿名内部类就是没有名字的内部类。什么情况下需要使用匿名内部类? ... -
【转】java匿名内部类
2012-06-12 13:32 1446java匿名内部类 (2010-11 ... -
【转】JAVA中获取路径
2012-03-25 16:57 858转自:http://wenku.baidu.com/view/ ... -
【转】Map遍历
2012-03-25 16:56 943转自:http://wenku.baidu.com/view/ ... -
【转】java解析xml文件四种方式
2012-03-25 16:54 1402转自:http://wenku.baidu.com ... -
【转】解析Html页面:HTML Parser的试用
2012-03-24 15:10 1420转自:http://blog.csdn.net/scud/ar ... -
【转】java随机排列数组
2012-02-20 18:58 2373转自:http://blog.csdn.net/liang ... -
设计模式——代理模式
2012-01-06 13:14 1270代理模式: 为其他对象提供一种代理以控制对这个对象的访问 ... -
设计模式——装饰模式
2012-01-05 15:58 1280首先介绍三个重要原则: 依赖倒转原则:高层模块不应该依赖于 ... -
设计模式——策略模式 & 单例模式
2011-12-29 16:26 1572策略模式: * 策略模式定义了算法家族,分别封装起来,让他 ... -
排序算法
2011-12-28 22:41 960参考:http://student.zjzk.cn/cours ... -
设计模式——简单工厂 VS 工厂方法
2011-12-28 15:07 1210简单工厂模式: 它最大优点在于工厂类中包含了必要的逻辑 ... -
String
2011-12-27 10:53 12711. String s = new String(" ...
相关推荐
本篇文章将深入探讨如何使用JDOM解析XML文件。 首先,我们需要理解JDOM的基本结构。JDOM通过Document对象表示整个XML文档,Element代表XML元素,Attribute表示元素属性,Text表示元素内的文本内容。这些类构成了...
Java JDOM解析XML是Java开发中处理XML文档的一种方法,JDOM全称为Java Document Object Model,它是一个基于Java语言的API,用于创建、修改和读取XML文档。JDOM为XML处理提供了一种高效且方便的解决方案,尤其适用于...
下面我们将详细探讨JDOM解析本地XML的相关知识点。 首先,JDOM的核心概念包括`Element`、`Attribute`和`Document`。`Element`代表XML文档中的元素节点,`Attribute`则是元素的属性,而`Document`则封装了整个XML...
**Java与XML:JDOM解析XML的详细指南** 在Java编程中,XML(eXtensible Markup Language)是一种被广泛使用的数据交换格式,用于存储结构化数据。为了处理XML文档,开发者可以使用多种库,其中之一就是JDOM。JDOM是...
基于java的开发源码-用jdom解析xml.zip 基于java的开发源码-用jdom解析xml.zip 基于java的开发源码-用jdom解析xml.zip 基于java的开发源码-用jdom解析xml.zip 基于java的开发源码-用jdom解析xml.zip 基于java的开发...
在这个例子中,我们将深入探讨如何使用JDOM解析XML文件,并进行遍历与构建。 首先,我们需要了解JDOM的基本概念。JDOM主要由三部分构成:SAXBuilder用于从XML源构建DOM树,Element代表XML文档的元素,Attribute代表...
**JDOM解析XML文件** XML(eXtensible Markup Language)是一种用于标记数据的语言,广泛应用于数据交换、配置文件和文档存储等领域。在Java中,JDOM(Java Document Object Model)是一个流行的选择来解析和操作...
这个库提供了丰富的功能,能够满足大部分XML处理需求,同时它的API简洁直观,使得开发人员能快速上手。在实际应用中,结合JDOM与其他工具,如XPath表达式来查询XML数据,可以进一步提高代码的灵活性和效率。
### jdom解析XML文件及将字符串解析为XML #### 一、JDOM简介与环境搭建 JDOM(Java Document Object Model)是一种用Java语言编写的轻量级API,用于处理XML文档。它允许开发者轻松地读取、创建、修改XML文档,并将...
在 Java 中,解析 XML 文件是一件常见的任务,而 JDOM 是一个流行的开源库,用于解析和处理 XML 文件。本文将详细介绍如何使用 JDOM 解析 XML 文件。 JDOM 介绍 JDOM 是一个开源项目,基于树型结构,利用纯 Java ...
使用JDOM解析XML文档通常包括以下几个步骤: 1. 创建`SAXBuilder`实例,这是JDOM提供的解析器,可以将XML输入源转换为`Document`对象。 2. 使用`SAXBuilder`的`build`方法读取XML文件,生成`Document`对象。 3. ...
本篇文章将深入探讨如何利用JDOM解析XML文件,并基于XML中的类名生成相应的对象。 首先,我们需要理解JDOM的基本概念。JDOM提供了一组Java对象来表示XML文档,包括Element(元素)、Attribute(属性)、Text(文本...
1. `JDOMUtil.java`:这是一个Java类,包含了使用JDOM解析XML的主要代码。在这个例子中,我们将学习如何读取XML文件,创建一个`SAXBuilder`对象来构建XML文档的DOM(文档对象模型)表示,然后通过`Document`对象来...
本篇文章将深入探讨如何利用JDOM解析XML文件,以及在这个过程中涉及的关键知识点。 首先,我们需要了解XML(Extensible Markup Language)的基本概念。XML是一种标记语言,用于存储和传输结构化数据。它的结构清晰...
这篇名为“Jdom解析嵌套XML<一>”的文章可能涉及了如何使用JDOM处理包含复杂嵌套结构的XML文件。 首先,我们来了解一下JDOM的基本概念。JDOM的主要目标是为Java开发者提供一个高性能、内存中且基于树的API,以便...
在这个小实例中,我们将深入探讨如何使用JDOM解析XML文件。 首先,我们需要引入JDOM的依赖。在Java项目中,如果你使用的是Maven,可以在pom.xml文件中添加以下依赖: ```xml <groupId>org.jdom <artifactId>...
要使用JDOM解析XML,首先需要将JDOM的jar文件(如jdom.jar)添加到项目的类路径中。此外,由于XML解析通常涉及到其他库,如XPath解析和DTD处理,我们看到压缩包中还包含了一些其他相关的jar文件: 1. xalan.jar:...
**使用JDOM解析XML的步骤** 1. 创建`SAXBuilder`实例。 2. 使用`SAXBuilder`的`build()`方法从XML输入流或文件路径解析XML。 3. 获取`Document`对象,它是整个XML文档的根。 4. 通过`Document`对象遍历或修改元素、...
JDOM是一种使用 XML 的独特 Java 工具包,用于快速开发 XML 应用程序。它的设计包含 Java 语言的语法乃至语义。 JDOM是两位著名的 Java 开发人员兼作者,Brett Mclaughlin 和 Jason Hunter 的创作成果.
### JDOM解析XML的基本概念 1. **DOM(Document Object Model)**:DOM是一种树形结构,将XML文档解析为一系列的对象,这些对象可以被Java程序访问和操作。JDOM就是基于DOM模型的实现。 2. **Element**: 在JDOM中...