java中使用dom4j写xml文件和简单教程

本文介绍使用DOM4j库创建XML文件的过程,包括正确设置元素及其属性的方法,并通过示例对比了错误与正确的实现方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 
下载 dom4j-1.6.1.jar。
 
 

1: package org.zzp.common.xml.dom4j;

  2: 
  3: import java.io.FileWriter;
  4: import java.io.IOException;
  5: import org.dom4j.Document;
  6: import org.dom4j.DocumentHelper;
  7: import org.dom4j.Element;
  8: import org.dom4j.io.OutputFormat;
  9: import org.dom4j.io.XMLWriter;
 10: 
 11: public class Dom4jDemo {
 12: 	public static void main(String[] args) {
 13: 		Document doc=DocumentHelper.createDocument();
 14: 		Element root=doc.addElement("students");
 15: 		Element s1=root.addElement("student");
 16: 		s1.addElement("id","1");
 17: 		Element name=s1.addElement("name","王建宙");
 18: 		name.addAttribute("sex", "");
 19: 		OutputFormat format=OutputFormat.createPrettyPrint();
 20: 		format.setEncoding("gbk");
 21: 		try {
 22: 			XMLWriter out=new XMLWriter(new FileWriter("test.xml"),format);
 23: 			out.write(doc);
 24: 			out.close();
 25: 		} catch (IOException e) {
 26: 			// TODO Auto-generated catch block
 27: 			e.printStackTrace();
 28: 		}
 29: 	}
 30: }
ok.我们来看看test.xml的内容
 
  1: <?xml version="1.0" encoding="gbk"?>
  2: 
  3: <students>
  4:   <student>
  5:     <id xmlns="1"/>
  6:     <name xmlns="王建宙" sex="非"/>
  7:   </student>
  8: </students>

。。。怎么会这样。。<id xmlns=”1” />怎么变这样的

我要的是“<id>1</id>”啊。。

那么正确的应该怎么写呢。。我们来看看

 
  1: package org.zzp.common.xml.dom4j;
  2: 
  3: import java.io.FileWriter;
  4: import java.io.IOException;
  5: import org.dom4j.Document;
  6: import org.dom4j.DocumentHelper;
  7: import org.dom4j.Element;
  8: import org.dom4j.io.OutputFormat;
  9: import org.dom4j.io.XMLWriter;
 10: 
 11: public class Dom4jDemo {
 12: 	public static void main(String[] args) {
 13: 		Document doc=DocumentHelper.createDocument();
 14: 		Element root=doc.addElement("students");
 15: 		Element s1=root.addElement("student");
 16: 		s1.addElement("id").setText("1");
 17: 		Element name=s1.addElement("name");
 18: 		name.setText("王建宙");
 19: 		name.addAttribute("sex","");
 20: 		OutputFormat format=OutputFormat.createPrettyPrint();
 21: 		format.setEncoding("gbk");
 22: 		try {
 23: 			XMLWriter out=new XMLWriter(new FileWriter("test.xml"),format);
 24: 			out.write(doc);
 25: 			out.close();
 26: 		} catch (IOException e) {
 27: 			// TODO Auto-generated catch block
 28: 			e.printStackTrace();
 29: 		}
 30: 	}
 31: }

好了,现在正常了。这个错误是我犯的。我自己猜想addElement(“name”,”value” )。原来这样是不对的。至于那个xmlns好像是命名空间吧,我也不懂,不管他。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值