java使用dom4j生成与解析xml文档的方法示例

网友投稿 261 2023-04-27


java使用dom4j生成与解析xml文档的方法示例

本文实例讲述了java使用dom4j生成与解析xml文档的方法。分享给大家供大家参考,具体如下:

xml是一种新的数据格式,主要用于数据交换。我们所用的框架都有涉及到xml。因此解析或生成xml对程序员也是一个技术难点。这里就用dom4j来生成一个文档,需要注意的是每个xml文档只有一个根节点。

package org.lxh;

import java.io.File;

import java.io.FileNotFoundException;

import java.io.FileOutputStream;

import java.io.UnsupportedEncodingException;

import org.dom4j.Document;

import org.dom4j.DocumentHelper;

import org.dom4j.Element;

import org.dom4j.io.OutputFormat;

import org.dom4j.io.XMLWriter;

public class CreateXml {

public static void main(String[] args) {

File f=new File("d:"+File.separator+"my.xml");

Document docu=DocumentHelper.createDocument(); //创建xml文档

Element linkman=docu.addElement("linkman"); //创建根节点

Element name=linkman.addElement("name"); //创建子元素

Element age=linkman.addElement("age");

name.setText("陈瑞银"); //设置name节点的内容

age.setText("22"); //设置age节点的内容

OutputFormat format=OutputFormat.createPrettyPrint(); //指定输出格式

format.setEncoding("UTF-8"); //指定输出编码

try {

XMLWriter w=new XMLWriter(new FileOutputStream(f),format); //输出文件

w.write(docu); //输出内容

w.close();

} catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

iPLCilqCy}

}

}

现在看一下文档生成没有,如图所示

文档生成了,这个文档比较简单。生成复杂的文档也是一样的道理。下面来解析一下这个xml。

代码如下所示

package org.lxh;

import java.io.File;

import java.util.Iterator;

import org.dom4j.*;

import org.dom4j.io.SAXReader;

public class ReadXml {

public static void main(String[] args) {

File f=new File("d:"+File.separator+"my.xml");

SAXReader read=new SAXReader(); //建立SAX解析读取

Document document=null;

try {

document=read.read(f); //读取文档

Element root=document.getRootElement(); //取得根元素

//下面给注释的部分用于解析复杂的xml(3层或以上)

/*Iterator it=root.elementIterator(); //取得全部子节点

while(it.hasNext())

{

/*Element e=(Element)it.next();

System.out.println(e.elementText("name")); //取得文本元素

System.out.println(e.elementText("age"));

}*/

System.out.println(root.elementText("age"));

} catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

}

下面是运行效果截图

PS:这里再为大家提供几款关于xml操作的在线工具供大家参考使用:

在线XML/jsON互相转换工具:

http://tools.jb51.net/code/xmljson

在线格式化XML/在线压缩XML:

http://tools.jb51.net/code/xmlformat

XML在线压缩/格式化工具:

http://tools.jb51.net/code/xml_format_compress

XML代码在线格式化美化工具:

http://tools.jb51.net/code/xmlcodeformat

更多关于java算法相关内容感兴趣的读者可查看本站专题:《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总》

希望本文所述对大家java程序设计有所帮助。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:详解Spring学习之编程式事务管理
下一篇:angular使用bootstrap方法手动启动的实例代码
相关文章

 发表评论

暂时没有评论,来抢沙发吧~