dom4j官方文档(我用dom4j创建了一个xml文档,没有错误,但运行没有结果,哪位高手指点一下)

本文目录
- 我用dom4j创建了一个xml文档,没有错误,但运行没有结果,哪位高手指点一下
- 跪求一个例子,利用dom4j对xml文档进行增删改查,特别是查,尽量详细一点的,最好有注释哦..
- 谁知道dom4j.jar从哪里下载
我用dom4j创建了一个xml文档,没有错误,但运行没有结果,哪位高手指点一下
public class HostIP {
private static void changeXML(String location) {
String hostip = "192.168.0.1";
//创建docunment对象
Document document = DocumentHelper.createDocument();
//创建根节点
Element hostIPElement = document.addElement("HostIP");
hostIPElement.setText(hostip);
try {
//new FileWriter(new File("HostIP.xml")), 没用你的写法
FileOutputStream fileOutputStream = new FileOutputStream(location);
OutputStreamWriter outputStreamWriter = new OutputStreamWriter(fileOutputStream,"UTF-8");
OutputFormat fmt = OutputFormat.createPrettyPrint();
fmt.setEncoding("utf-8");
XMLWriter writer = new XMLWriter(outputStreamWriter,fmt);
writer.write(document);
writer.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
public static void main(String args) {
//传保存路径
String location = "C:/test/HostIP.xml";
changeXML(location);
}
}
这个是我比着你的改的,可以用。你看看吧
跪求一个例子,利用dom4j对xml文档进行增删改查,特别是查,尽量详细一点的,最好有注释哦..
这是xml文件
《?xml version="1.0" encoding="utf-8"?》
《banks BANKSATT="a"》
《bank BANKATT="hello"》
《id》1《/id》
《ide》a《/ide》
《name of="hua"》华夏银行《/name》
《address》海淀区《/address》
《scale》large《/scale》
《/bank》
《bank》
《id》4《/id》
《ide》b《/ide》
《name》招商银行《/name》
《address》昌平区《/address》
《scale SCALEATT="5"》middle《/scale》
《/bank》
《bank》
《id》5《/id》
《ide》c《/ide》
《name》工商银行《/name》
《address》朝阳区《/address》
《scale》little《/scale》
《/bank》
《/banks》
下面是解析
import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;
import java.util.Iterator;
import java.util.List;
import org.dom4j.DocumentException;
import org.dom4j.Attribute;
import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter;
/*改转换关系关存入另外的文件
就那么几个方法吧 ,多写就会写了
*/
public class UpdateXml {
public static void main(String args){
SAXReader reader=new SAXReader();
File file=new File("bank.xml");
try{
Document document=reader.read(file);//得到文档对象
Element root=document.getRootElement();//得到根节点
Element ele=root.addElement("like");//增加节点
Element ele2=root.addElement("like2");//增加节点
Element eleRoot=ele.addElement("you");
eleRoot.setText("genhua");//设置内容
eleRoot.addAttribute("ai", "ni");//增加属性名和值
//List nodes=root.elements();//求子节点
//不知道这个是不是查
List nodes=root.elements("bank");//求所有BANK
for(Iterator it=nodes.iterator();it.hasNext();){
Element its=(Element)it.next();
System.out.println(its);
}
//下面这个是查bank下的所有子节点
for(Iterator itRoot=root.element("bank").elementIterator();itRoot.hasNext();){
Element itsRoot=(Element)itRoot.next();
System.out.println(itsRoot.getName());
}
//下面这个就是改某些值了
for(Iterator child=root.elementIterator();child.hasNext();){
Element childName=(Element)child.next();
for(Iterator childRoot=childName.elementIterator();childRoot.hasNext();){
Element childRootName=(Element)childRoot.next();
while(childRootName.getText().equals("海淀区"))
{childRootName.setText("001");}
while(childRootName.getText().equals("昌平区"))
{childRootName.setText("003");}
}
}
//remove()方法就是删了
root.remove(ele2);//删除节点
System.out.println(document.asXML());
Attribute att=root.attribute("ia");//取得ia的属性值
//System.out.println("属性"+att.getName()+"值"+att.getText());
new WriteIn().doc2(document,"bank2.txt");
}catch(DocumentException er){
er.printStackTrace();
}
}
}
//把输出的方法放外面了
class WriteIn{
public static boolean doc2(Document docu, String filename) {
boolean flag = true;
try {
XMLWriter writer = new XMLWriter( new OutputStreamWriter(new FileOutputStream(filename),"UTF-8"));
writer.write(docu);
writer.close();
} catch (Exception ex) {
flag = false;
ex.printStackTrace();
}
System.out.println(flag);
return flag;
}
}
谁知道dom4j.jar从哪里下载
DOM4J官方网站:
***隐藏网址***
DOM4J下载(SourceForge)
***隐藏网址***
***隐藏网址***
Dom4j的使用(全而好的文章):
***隐藏网址***
推荐一个APACHE的开源项目Digester,对象化解析XML
***隐藏网址***

更多文章:
comment谐音记忆(麻烦各位给我介绍一下法语的基本用语(要带中文谐音))
2026年8月30日 00:45
compound c抑制剂(酶促反应动力学的抑制剂对反应速度的影响)
2025年9月9日 13:15
response [200](请问HTTP响应状态码200什么意思)
2026年6月27日 22:00
excel表格水平滚动条设置(如何让excel表格水平滚动和垂直滚动)
2026年1月27日 13:45
chinese boy boy(在英文中一般是a chinese boy还是a china boy)
2025年11月11日 23:15
网站后台登录入口(怎样找到网站后台入口知道后台用户名和密码)
2025年11月6日 15:30
getmonth 怎么比当前月份少1呢(js 怎么求两个日期相差几个月零几天)
2025年12月20日 10:30
chatgpt中文免费版下载(gpt人工智能AI机器人免费试用版有吗)
2026年2月21日 17:00
美国参议院通过西藏修正案案例分析报告(美国参议院的基本认识)
2026年9月11日 19:00
ksweb安装phpmyadmin(ksweb进入phpMyAdmin卡顿)
2025年9月27日 10:15
c语言fwrite源码(【求源码】求一个能把bmp位图读到数组里的C语言源码,网上bmp格式看不懂谢谢)
2026年2月5日 00:00















