黑马程序员技术交流社区
标题:
DOM4j解析xml的原理是什么?以下xml如何通过解析?
[打印本页]
作者:
Mr.Z.Lee
时间:
2013-11-4 10:17
标题:
DOM4j解析xml的原理是什么?以下xml如何通过解析?
<?xml version="1.0" encoding="UTF-8"?>
<catalog>
<!--An XML catalog-->
<?target instruction?>
<journal title="XML Zone"
publisher="IBM developerWorks">
<article level="Introductory" date="October-2002">
<title>Create flexible and extensible XML schemas</title>
<author>
<firstname>Ayesha</firstname>
<lastname>Malik</lastname>
</author>
</article>
</journal>
</catalog>
复制代码
作者:
~﹏~
时间:
2013-11-5 21:00
应该是使用数据结构中的栈(Stack)的,压入标签,取出标签。。。
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.XMLWriter;
import java.io.*;
public class XmlDom4J{
public void generateDocument(){
Document document = DocumentHelper.createDocument();//使用 DocumentHelper 类创建一个文档实例
Element catalogElement = document.addElement("catalog");//使用 addElement() 方法创建根元素 catalog
catalogElement.addComment("An XML Catalog");//在 catalog 元素中使用 addComment() 方法添加注释“An XML catalog”
catalogElement.addProcessingInstruction("target","text");//在 catalog 元素中使用 addProcessingInstruction() 方法增加一个处理指令。
Element journalElement = catalogElement.addElement("journal");//在 catalog 元素中使用 addElement() 方法增加 journal 元素。
journalElement.addAttribute("title", "XML Zone");//使用 addAttribute() 方法向 journal 元素添加 title 和 publisher 属性。
journalElement.addAttribute("publisher", "IBM developerWorks");
Element articleElement=journalElement.addElement("article");//向 article 元素中添加 journal 元素。
articleElement.addAttribute("level", "Intermediate");//为 article 元素增加 level 和 date 属性。
articleElement.addAttribute("date", "December-2001");
Element titleElement=articleElement.addElement("title");//向 article 元素中增加 title 元素。
titleElement.setText("Java configuration with XML Schema");//使用 setText() 方法设置 article 元素的文本。
Element authorElement=articleElement.addElement("author");//在 article 元素中增加 author 元素。
Element firstNameElement=authorElement.addElement("firstname");//在 author 元素中增加 firstname 元素并设置该元素的文本。
firstNameElement.setText("Marcello");
Element lastNameElement=authorElement.addElement("lastname");//在 author 元素中增加 lastname 元素并设置该元素的文本。
lastNameElement.setText("Vitaletti");
document.addDocType("catalog",null,"file://c:/Dtds/catalog.dtd");//可以使用 addDocType() 方法添加文档类型说明。
try{
XMLWriter output = new XMLWriter(//创建输出流
new FileWriter( new File("c:/catalog/catalog.xml") ));
output.write( document );//将读取出来的document写入到输出流中
output.close();
}
catch(IOException e)
{
System.out.println(e.getMessage());
}
}
public static void main(String[] argv){
XmlDom4J dom4j=new XmlDom4J();
dom4j.generateDocument();
}
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2