,,Java使用dom4j实现对xml简单的增删改查操作示例

,,Java使用dom4j实现对xml简单的增删改查操作示例

摘要:本文主要介绍了Java使用dom4j对xml的简单添加、删除和检查,并结合实例详细分析了Java使用dom4j对xml进行简单添加、删除和检查的基本操作技巧和相关注意事项。有需要的可以参考以下。

本文描述了Java如何使用dom4j实现简单的添加、删除和检查xml的操作。分享给你,供你参考,如下:

xml期末有一个作业:后台用xml文件作为存储,做一个迷你系统,实现添加、删除、查看的功能。请在这里记录它。

必须先引入dom4j的jar包,放在项目的WEB-INF-lib目录下。

首先创建一个新的阅读器来读取你要操作的xml文件(我这里写的绝对路径)。

//读取XML文件以获取文档对象

SAXReader reader=new SAXReader();

文档document=null

尝试{

document=reader.read(新文件(' E:\ \ eclipse \ \ XmlTest \ \ src \ \ XML \ \ user . XML '));

} catch (DocumentException e) {

e . printstacktrace();

}

如果没有添加上面的try catch,Eclipse将会报告一个错误,因为当涉及到文件操作时,如果最初没有为空,文档也会报告一个错误。

//获取根节点的属性对象

element root elem=document . getrootelement();

基本声明:

//下面的操作以root为例。所有节点都可以不同于根节点。下面的孩子指的是第一代孩子。

//返回标签名为“user”的根节点的子节点,如果有多个,则只返回第一个。

element contact elem=root elem . element(' user ');

//获取节点标记之间的内容

String text=contactElem。getText();

//返回所有子节点,即ListElement

list element eles=root elem . elements();

//返回这个节点的属性,返回的是一个对象

属性root attr=root elem . attribute(' id ');

//更改属性值

root attr . setvalue(' changed id value ');

//向元素添加属性和属性值

RootElem.addAttribute('name ','添加成功!');

//删除节点的一个属性

root elem . remove(root attr);

//节点和节点的属性都可以获得名称(标记名/属性名)

string idName=root attr . getname();

string tagName=root elem . getname();

//获取属性的属性值

string value=root attr . getvalue();

所有涉及修改和添加的操作,在修改dom对象后,写回文件:

output format format=output format . createprettyprint();

format . set encoding(“UTF-8”);

org . dom4j . io . xmlwriter writer=new org . dom4j . io . xmlwriter(新文件输出流(新文件(此处填入你的xml路径)),格式);

writer.write(文档);

writer . close();

以下都省略文件的读取和document / rootElem的获取(上面提到过)

我这里有一个用户表如下,用来存储后端账号密码。

//user,password是前台发来的账号密码。

boolean RightPassword=false

list element eles=root elem . elements();

for(ele:eles元素)

{

if(ele.element('account ')。getText()。等于(用户))

{

if(ele.element('password ')。getText()。等于(密码))

RightPassword=true

返回;

}

}

再举一个xml的例子,它存储文章。

再加一个例子,可以更复杂。

element new article=root elem . add element(' article ');

NewArticle.setText('文章内容');

//下面的输出文件与上面提到的相同

output format format=output format . createprettyprint();

format . set encoding(“UTF-8”);

org . dom4j . io . xmlwriter writer=new org . dom4j . io . xmlwriter(新文件输出流(新文件('您的xml路径')),格式);

writer.write(文档);

writer . close();

以下示例根据标签内容删除一个节点。

(应该是按照一个属性值删除,比如id,因为上面的例子追求简单,没有属性)

list element eles=root elem . elements();

for(ele:eles元素)

{

If(ele.getText()。等于('根据内容删除'))

{

rootelem . remove(ele);

}

}

//下面的输出文件与上面提到的相同

output format format=output format . createprettyprint();

format . set encoding(“UTF-8”);

org . dom4j . io . xmlwriter writer=new org . dom4j . io . xmlwriter(新文件输出流(新文件('您的xml路径')),格式);

writer.write(文档);

writer . close();

和上面的删除只有一点不同。找到节点后,可以设置任何想要修改的内容。

list element eles=root elem . elements();

for(ele:eles元素)

{

if(ele.getText().等于('按照内容修改'))

{

ele.setText('修改后的内容');

}

}

//以下的输出文件和上面提到的一样

输出格式format=输出格式。createprettyprint();

格式。集合编码(“UTF-8”);

org。dom4j。io。XML编写器编写器=新组织。dom4j。io。XML编写器(新文件输出流(新文件(’你的可扩展标记语言路径))、格式);

writer.write文档);

作家。close();

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 语言(一种计算机语言,尤用于创建网站)语言(一种计算机语言,尤用于创建网站)程序设计有所帮助。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: