xml文件的增删改查

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

package com.accp.xml.dom4j;

import java.io.FileInputStream;

import java.io.FileNotFoundException; import java.io.FileOutputStream;

import java.io.FileWriter;

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.Attribute;

import org.dom4j.Document;

import org.dom4j.DocumentException; import org.dom4j.Element;

import org.dom4j.io.OutputFormat; import org.dom4j.io.SAXReader;

import org.dom4j.io.XMLWriter;

import org.dom4j.tree.DefaultDocument; import org.xml.sax.EntityResolver;

import org.xml.sax.InputSource;

import org.xml.sax.SAXException;

/**

* xml的增删改查示例

*

* @author

*

*/

public class XMLCrud {

/**

* 默认的构造方法

*

* @throws DocumentException

* @throws IOException

* @throws SAXException

*/

public XMLCrud() {

// Document doc = loadXML("class.xml"); //

// // 载入XML文档

// // System.out.println(doc.asXML());

//

// // 打印XML文档

// printDoc(doc);

//

// // 把XML文档存入硬盘

// storeDoc(doc, "new.xml");

// 新建xml文档对象

// Document doc1 = this.createDoc();

//

//

//

//

//

//

// //存入note.xml

// storeDoc(doc1, "note.xml");

// System.out.println(getStudentCount(doc));

/*

* // 校验dtd XML文档doc = valideDoc("class.xml");

*

* printDoc(doc); // 校验Schema文档doc =

* validateDocBySxd("classSchema.xml"); printDoc(doc);

*

* String url = getClass().getResource("/xml/dom4j/wkjava/class.xsd")

* .toString(); // 校验Schema文档(俩参数)doc =

* validateDocBySxd("classSchema.xml", url); printDoc(doc); //

* 创建Schema文档doc = createDoc(); storeDoc(doc, "root.xml"); doc =

* validateDocBySxd("classSchema.xml"); // 在文档中修改原属updateZip(doc, * "102202"); printDoc(doc);

*

* doc = validateDocBySxd("classSchema.xml"); // 打印文档中所有学生名字

* printNames(doc);

*

*

*/

}

public static void main(String[] args) {

XMLCrud xml = new XMLCrud();

xml.genXMLFile();

}

/**

* 装载xml文件,解析为dom文档对象

*

* @param xmlfile

* @return

* @throws FileNotFoundException

* @throws DocumentException

*/

public Document loadXML(String xmlfile) throws FileNotFoundException, DocumentException {

// 获得SAX的xml解析器

SAXReader reader = new SAXReader();

// 解析xml文件获得文档对象引用

Document doc = reader.read(new FileInputStream(xmlfile));

return doc;

}

/**

* 打印doc文档

*

* @param doc

* @throws IOException

*/

public void printDoc(Document doc) throws IOException {

// 创建字符输出流(输出目标为控制台System.out)

Writer out = new OutputStreamWriter(System.out, "utf-8");

// 创建输出格式对象

OutputFormat format = OutputFormat.createPrettyPrint();

// 由字符输出流对象和输出格式对象为参数创建xml输出对象

XMLWriter writer = new XMLWriter(out, format);

// 调用输出方法(如果输出目标为文件,则相当于保存xml文档)

writer.write(doc);

// 刷新输出流,清空缓存

out.flush();

}

相关文档
最新文档