使用JDOM操作XML系列文章三 平面式XML文件转层叠式XML文件

王朝other·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

使用JDOM操作XML系列文章三 平面式XML文件转层叠式XML文件

package jing.xml;

/**

* <p>Title: 平面式XML文件转层叠式XML文件</p>

* <p>Description: </p>

* <p>Copyright: Copyright (c) 2004</p>

* <p>Company: </p>

* @author 欧朝敬 13873195792

* @version 1.0

*/

import org.jdom.*;

import org.jdom.output.*;

import org.jdom.input.*;

import org.jdom.XPath.*;

import Java.io.*;

import java.util.*;

public class xmltotree {

public SAXBuilder sb = null;

public Document doc = null;

public Element root = null;

public xmltotree() throws Exception {

sb = new SAXBuilder(); // 新建立构造器

doc = sb.build(new FileInputStream("company.xml")); // 读入文件

root = doc.getRootElement(); // 获得根元素element

}

public void Listelemnet(String pid, Element element) throws Exception {

List find = XPath.selectNodes(root, "/ROOT/ROW[@PID=´" + pid + "´]");

int rowcount = find.size();

for (int i = 0; i < rowcount; i++) {

Element findelement = (Element) find.get(i);

Element element0 = new Element("ROW");

List attrib = findelement.getAttributes();

int j = attrib.size();

for (int h = 0; h < j; h++) {

Attribute attribute = (Attribute) attrib.get(h);

element0.setAttribute(

attribute.getName(),

attribute.getValue());

}

element.addContent(element0);

Listelemnet(findelement.getAttributeValue("CID"), element0);

}

}

public static void main(String[] args) throws Exception {

xmltotree bb = new xmltotree();

Element roote = new Element("ROOT");

Document tdocument = new Document(roote); //创建文档ROOT元素

bb.Listelemnet("0", roote);

XMLOutputter outp = new XMLOutputter(Format.getPrettyFormat()); //格式华输出,产生缩进和换行

Format format = outp.getFormat();

format.setEncoding("GB2312"); //设置语言

format.setExpandEmptyElements(true); //设置输出空元素为<sample></sample>格式

outp.setFormat(format);

outp.output(tdocument, new FileOutputStream("companytree.xml")); //输出XML文档

//outp.output(tdocument,System.out);

System.out.print("XML 文档生成完毕!");

}

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航