基于JDOM生成解析XML过程解析
JDOM是一个开源项目,它基于树型结构,利用纯JAVA的技术对XML文档实现解析、生成、序列化以及多种操作。
JDOM直接为JAVA编程服务。它利用更为强有力的JAVA语言的诸多特性(方法重载、集合概念以及映射),把SAX和DOM的功能有效地结合起来。
Jdom是用Java语言读、写、操作XML的新API函数。JasonHunter和BrettMcLaughlin公开发布了它的1.0版本。在直觉、简单和高效的前提下,这些API函数被最大限度的优化。在接下来的篇幅里将介绍怎么用Jdom去读写一个已经存在的XML文档。
到官方网站下载JDOM包http://www.jdom.org/
注意的是,版本1和版本2的类路径已经变更,如果你是更新使用版本2,则需要重新编译你的代码
packagecom.test;
importjava.io.FileOutputStream;
importjava.util.List;
importorg.jdom2.Document;
importorg.jdom2.Element;
importorg.jdom2.input.SAXBuilder;
importorg.jdom2.output.Format;
importorg.jdom2.output.XMLOutputter;
/**
*@说明JDom生成解析XML
*@authorcuisuqiang
*@version1.0
*@since
*/
@SuppressWarnings("unchecked")
publicclassJDomDemo{
publicstaticvoidmain(String[]args){
Stringfile="C:\\p.xml";//文件存放位置
JDomDemodj=newJDomDemo();
dj.createXml(file);
dj.parserXml(file);
}
/**
*生成XML
*@paramfilePath文件路径
*/
publicvoidcreateXml(StringfileName){
Elementroot=newElement("persons");
Documentdocument=newDocument(root);
Elementperson=newElement("person");
root.addContent(person);
Elementname=newElement("name");
name.setText("java小强");
person.addContent(name);
Elementsex=newElement("sex");
sex.setText("man");
person.addContent(sex);
Elementage=newElement("age");
age.setText("23");
person.addContent(age);
XMLOutputterXMLOut=newXMLOutputter();
try{
Formatf=Format.getPrettyFormat();
f.setEncoding("UTF-8");//default=UTF-8
XMLOut.setFormat(f);
XMLOut.output(document,newFileOutputStream(fileName));
}catch(Exceptione){
e.printStackTrace();
}
}
/**
*解析XML
*@paramfilePath文件路径
*/
publicvoidparserXml(StringfileName){
try{
SAXBuilderbuilder=newSAXBuilder();
Documentdocument=builder.build(fileName);
Elementroot=document.getRootElement();
Listpersons=root.getChildren("person");
for(inti=0;i
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。