加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

修改XML文档的例子

发布时间:2020-12-16 02:11:19 所属栏目:百科 来源:网络整理
导读:要求: 1.生成一个XML文档: ?xml version="1.0" encoding="utf-8"? Students Student id="1" name张三/name gender男/gender grade计算机一班/grade address广州天河/address /Student Student id="2" name李四/name gender女/gender grade计算机二班/grade

要求:

1.生成一个XML文档:

<?xml version="1.0" encoding="utf-8"?>

<Students>
<Student id="1">
<name>张三</name>
<gender>男</gender>
<grade>计算机一班</grade>
<address>广州天河</address>
</Student>
<Student id="2">
<name>李四</name>
<gender>女</gender>
<grade>计算机二班</grade>
<address>广州越秀</address>
</Student>
</Students>

2.将id为2的学生的姓名修改为张丽

实现代码:

package gz.itcast.a_dom4j_read;

import java.io.File;
import java.io.FileOutputStream;
import java.util.Iterator;

import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter;
import org.junit.Test;

public class Demo_Write1 {
	public static void main(String[] args) throws Exception {
		//一、创建一个XML文档
		Document doc = DocumentHelper.createDocument();//1.创建一个文档
		Element rootElem = doc.addElement("Students");//2.创建标签
		Element studentElem1 = rootElem.addElement("Student");//创建子标签
		studentElem1.addAttribute("id","1"); //3.添加属性
		studentElem1.addElement("name").setText("张三");
		studentElem1.addElement("gender").setText("男");
		studentElem1.addElement("grade").setText("计算机一班");
		studentElem1.addElement("address").setText("广州天河");
		
		Element studentElem2 = rootElem.addElement("Student");//创建子标签
		studentElem2.addAttribute("id","2"); //3.添加属性
		studentElem2.addElement("name").setText("李四");
		studentElem2.addElement("gender").setText("女");
		studentElem2.addElement("grade").setText("计算机二班");
		studentElem2.addElement("address").setText("广州越秀");
		
		//二、修改XML文档:修改id为2的姓名为张丽,代码见test1
		
		//三、输出XML文件
		FileOutputStream out = new FileOutputStream("f:/Student.xml");
		OutputFormat format = OutputFormat.createPrettyPrint();
		format.setEncoding("utf-8");
		XMLWriter writer = new XMLWriter(out,format);
		writer.write(doc);
		writer.close();
	}
	
	//二、修改XML文档:修改id为2的姓名为张丽,代码见test1
	@Test
	public void test1() throws Exception {
		Document doc1 = new SAXReader().read(new File("f:/Student.xml"));
		Iterator<Element> it = doc1.getRootElement().elementIterator("Student");
		while(it.hasNext()){
			Element stuElem = it.next();
			System.out.println(stuElem.getName());
			if(stuElem.attributeValue("id").equals("2")) {
				stuElem.element("name").setText("张丽");
				break;
			}
		}
		
		FileOutputStream out = new FileOutputStream("f:/Student.xml");
		OutputFormat format = OutputFormat.createPrettyPrint();
		format.setEncoding("utf-8");
		XMLWriter writer = new XMLWriter(out,format);
		writer.write(doc1);
		writer.close();
	}
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读