DOM4J对XML文档的读写增删改等
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStreamWriter;
import java.io.Writer;
import java.util.Iterator;
import java.util.List;
import org.dom4j.Document;
import org.dom4j.DocumentException;
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.xml.sax.EntityResolver;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
public class MyTest {
Document doc = null;
public MyTest() throws DocumentException, IOException, SAXException {
Document doc = loadXML("class.xml"); // 载入XML文档
System.out.println(doc.asXML());
printDoc(doc); // 打印XML文档
storeDoc(doc, "new.xml"); // 把XML文档存入硬盘
doc = valideDoc("class.xml"); // 校验dtd XML文档
printDoc(doc);
doc = validateDocBySxd("classSchema.xml"); // 校验Schema文档
printDoc(doc);
String url = getClass().getResource("/xml/dom4j/wkjava/class.xsd").toString();
doc = validateDocBySxd("classSchema.xml", url); // 校验Schema文档(俩参数)
printDoc(doc);
doc = createDoc(); // 创建Schema文档
storeDoc(doc, "root.xml");
doc = validateDocBySxd("classSchema.xml");
updateZip(doc, "102202"); // 在文档中修改原属
printDoc(doc);
doc = validateDocBySxd("classSchema.xml");
printNames(doc); // 打印文档中所有学生名字
System.out.println(getStudentCount(doc));
}
public static void main(String[] args) {
try {
ne
相关文档:
以下是一个通过minidom模块写文件的完整示例,是在最近做的项目Walle上面用到的,这个示例的目的是生成一个如下的格式的xml,文件格式为无BOM utf-8。
生成xml文件格式:
<?xml version="1.0" encoding="utf-8"?>
<coverages>
<coverage>
  ......
在做一般的XML数据交换过程中,我更乐意传递XML字符串,而不是格式化的XML Document。这就涉及到XML字符串和Xml Document的转换问题,说白了这是个很简单的问题,本文就各种XML解析器分别列举如下,以方便自己今后查阅。
一、使用最原始的javax.xml.parsers,标准的jdk api
// 字符串转XML
String xmlStr = "......";
S ......
java 代码
package com.dc.framework.taglib;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List; &nb ......
<?xml version="1.0" encoding="UTF-8"?>
<root>
<person id="1">
<username >xiaoma</username>
<password>xiaoma</password>
</person>
<person id="2">
<username>manager</username> ......
这是一个用JAVA W3C DOM 进行XML操作的例子,包含了查询、增加、修改、删除、保存的基本操作。较完整的描述了一个XML的整个操作流程。适合刚入门JAVA XML操作的朋友参考和学习。
假设有XML文件:test1.xml
<?xml version="1.0" encoding="GBK"?>
<books>
<book>
<name>哈里波特</name>
......