java dom4j 添加节点_Java dom4j获取,添加,删除,查找,设置Element节点方法「建议收藏」

java dom4j 添加节点_Java dom4j获取,添加,删除,查找,设置Element节点方法「建议收藏」Javadom4j获取,添加,删除,查找,设置Element节点方法1.获取文档的根节点.ElementrootElm=document.getRootElement();2.取得某节点的单个子节点.ElementmemberElm=root.element(“member”);//”member”是节点名3.取得节点的文字Stringtext=memberElm.getText()…

大家好,又见面了,我是你们的朋友全栈君。

Java dom4j获取,添加,删除,查找,设置Element节点方法

1.获取文档的根节点.

Element rootElm = document.getRootElement();

2.取得某节点的单个子节点.

Element memberElm=root.element(“member”);// “member”是节点名

3.取得节点的文字

String text=memberElm.getText();//也可以用:

String text=root.elementText(“name”);//这个是取得根节点下的name字节点的文字.

4.取得某节点下名为”member”的所有字节点并进行遍历.

List nodes = rootElm.elements(“member”);

for (Iterator it = nodes.iterator(); it.hasNext();) {

Element elm = (Element) it.next();

// do something

}

5.对某节点下的所有子节点进行遍历.

for(Iterator it=root.elementIterator();it.hasNext();){

Element element = (Element) it.next();

// do something

}

6.在某节点下添加子节点.

Element ageElm = newMemberElm.addElement(“age”);

7.设置节点文字.

ageElm.setText(“29”);

8.删除某节点.

parentElm.remove(childElm);// childElm是待删除的节点,parentElm是其父节点

9.添加一个CDATA节点.

Element contentElm = infoElm.addElement(“content”);

contentElm.addCDATA(diary.getContent());

例子

public void modifyDoc() {

try {

Document doc = reader.read(new File(“file/catalog.xml”));

//修改节点内容

List list = doc.selectNodes(“//article”);

Iterator it = list.iterator();

while (it.hasNext()) {

Element el = it.next();

fail(el.getName() + “#” + el.getText() + “#” + el.getStringValue());

//修改title元素

Iterator elIter = el.elementIterator(“title”);

while(elIter.hasNext()) {

Element titleEl = elIter.next();

fail(titleEl.getName() + “#” + titleEl.getText() + “#” + titleEl.getStringValue());

if (“Java configuration with XML Schema”.equals(titleEl.getTextTrim())) {

//修改元素文本值

titleEl.setText(“Modify the Java configuration with XML Schema”);

fail(titleEl.getName() + “#” + titleEl.getText() + “#” + titleEl.getStringValue());

}

}

}

//修改节点子元素内容

list = doc.selectNodes(“//article/author”);

it = list.iterator();

while (it.hasNext()) {

Element el = it.next();

fail(el.getName() + “#” + el.getText() + “#” + el.getStringValue());

List childs = el.elements();

for (Element e : childs) {

fail(e.getName() + “#” + e.getText() + “#” + e.getStringValue());

if (“Marcello”.equals(e.getTextTrim())) {

e.setText(“Ayesha”);

} else if (“Vitaletti”.equals(e.getTextTrim())) {

e.setText(“Malik”);

}

fail(e.getName() + “#” + e.getText() + “#” + e.getStringValue());

}

}

//写入到文件

/*XMLWriter output = new XMLWriter(new FileWriter(new File(“file/catalog-modified.xml”)));

output.write(doc);

output.close();*/

} catch (DocumentException e) {

e.printStackTrace();

} catch (Exception e) {

e.printStackTrace();

}

}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/159413.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • CLion和vscode快捷键设置[通俗易懂]

    CLion和vscode快捷键设置[通俗易懂]ctrl+shift+F7:把某个单词高亮(),ESC:退出高亮。

    2022年6月11日
    79
  • 第一个Java项目———Java实现简单图书管理系统(GUI)

    第一个Java项目———Java实现简单图书管理系统(GUI)暑假写了个图书管理系统,编译器用的是eclipse,加入了WindowBuilder插件做界面(做的特丑),数据库用的是MySQL。实现了图书的查询,借阅,归还,删除,增加。用户的删除,查询。分为管理员和用户。一,程序整体框架从项目开始,无从下手,随着学习的深入,慢慢的熟悉了开发流程,先把整体框架搭起来,这个过程可以减少后续的一些麻烦,做数据库前先想好需求,…

    2022年7月15日
    9
  • 吐血推荐:VBScript教程及语言参考电子书「建议收藏」

    吐血推荐:VBScript教程及语言参考电子书「建议收藏」经过两次练手之后,花费一天时间,通过对从迅雷上所下载所有VBScript资源的整合,鼎力制作了此本VBScript教程及语言参考书。全书资源丰富,主要包括两部分内容。第一部分是教程部分,通过此章节的学习,我们可以很轻松的掌握VBScript的基础知识。第二部分是语言参考,提供一个搜索页面,在我们使用的时候可以随时查找到自己所需要查找的函数等的…

    2022年6月25日
    29
  • Navicat mysql报错 1142 – SELECT command denied to user ‘xxx‘@‘localhost‘ for table ‘user‘

    Navicat mysql报错 1142 – SELECT command denied to user ‘xxx‘@‘localhost‘ for table ‘user‘话我就撂这儿了,只要你认真看完,你就能解决。困了我一天一夜的问题终于解决了,问题也不知道是怎么产生的,点击“用户”或者修改“information_schema”的值就会提示错误,似乎是因为权限不足,错误入下图。首先你要知道数据库的用户是怎么回事。每个数据库都有账号密码,连接特定的数据库需要对应的账号密码,这个很容易理解,PHP里的mysqli_connect你们也用的多了。主机上的…

    2022年10月1日
    0
  • Java 实现ip代理池请求-爬虫防封、文章阅读刷量

    Java 实现ip代理池请求-爬虫防封、文章阅读刷量实现过程主要分两步:第一步,需要到ip代理平台,注册开通获取代理ip的api接口第二步,请求api接口,获得代理ip列表,实现ip代理请求指定网址。pom需要依赖<!–hutool–> <dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>5.3.6&lt..

    2022年5月28日
    46
  • 1045 Access denied for user ‘root’@’localhost’ (using password: YES)[通俗易懂]

    1045 Access denied for user ‘root’@’localhost’ (using password: YES)[通俗易懂]MySQL连接错误,使用Navicat连接MySQL出现错误:1045Accessdeniedforuser’root’@’localhost'(usingpassword:YES)解决方法:编辑mysql配置文件my.ini(在mysql的安装目录下,不同电脑可能不一样,参考目录①D:\ProgramFiles\MySQL\MySQLServer5.0\my….

    2022年5月13日
    75

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号