⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 .#xmltree.java.1.2

📁 博克后台的开发,有很多使用的方法和例子可以提供给大家学习
💻 2
字号:
package com.common.util.cis;
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;
import java.util.List;
import java.util.Stack;

import org.apache.commons.lang.CharSetUtils;
import org.apache.crimson.tree.XmlDocument;
import org.w3c.dom.Element;


/**
 * 生成点击弹出的树对应的xml文件
 * @date 2006-2-22
 * @author 刘学军
 */
public class XmlTree {

/**
 * 
 * @param xmlabsPath 生成xml文件存放的相对路径
 * @param xmlcreatename 生成xml文件的名称
 * @param title  树显示的题目
 * @param urlName    点击链接url
 * @param TreeList   生成xml文件所需要的数据集
 * @param showImg   节点前的图片,包括路径
 */
	
	public static void Create(String xmlabsPath ,String xmlcreatename,String title,String urlName,List treeList,String showImg)
	{ 
		System.out.println("XmlTree Create START...............\n ");	
		String layer = "";
		String nodeCode = "";
		String nodeName = "";
		String nodeStr = "";
		int currentLayer = 0;
		int preLayer = 0;
		String inputName = "chktree";
		String openMode = "1";
		String wwwPath = "";
		wwwPath = ""; 
		String xmlCreatePath = "";
		if(showImg.length()==0){
			showImg = "../images/cis/tree/biz7.gif";
		}
		String url = "";

		try 
		{
			
			//wwwPath = Common.GetWWWPath();
			
			xmlCreatePath = wwwPath + xmlabsPath;
			XmlDocument doc = new XmlDocument();
			//doc.LoadXml("<?xml version=\"1.0\" encoding=\"utf-8\" ?>\r<root name=\"树型数据\"></root> ");
			Element root =doc.createElement("root");
			root.setAttribute("name","树型数据");
			
			doc.appendChild(root);
			//SqlDataReader dataReader = null;
			//dataReader = DataAccess.DataBase.GetDataReader(dbProc);
			//XmlElement xmlRoot = doc.GetElementById("树型数据");
			Element xmlStart  = doc.createElement("start");
			xmlStart.setAttribute("name",title);
			xmlStart.setAttribute("url","#");
			xmlStart.setAttribute("show","yes");
			xmlStart.setAttribute("target","mainFrame");
			xmlStart.setAttribute("img","../images/cis/iconlogo.jpg");
          
			 root.appendChild(xmlStart);
			 
			Stack myStack = new Stack();
		 
			myStack.push(xmlStart);
			for(int g=0;g<treeList.size();g++) 
			//	while(dataReader.Read())
			{ 
				/*layer = dataReader["depaparentcoding"].ToString();
				nodeCode = dataReader["depaid"].ToString();
				nodeName = dataReader["depaname"].ToString();
				nodeStr = dataReader["depaparentcoding"].ToString();*/
				TreeElement treeElement=(TreeElement)treeList.get(g);
				layer =treeElement.getLayer();
				nodeCode = treeElement.getNodeCode();
				nodeName = treeElement.getNodeName();
				nodeStr =treeElement.getNodeFather();
				nodeStr=nodeStr==null?"":nodeStr;
				/*****/
				url = urlName.trim() +"depaid=" + nodeCode + "&depaname=" + nodeName + "&farter="+ nodeStr + nodeCode + "$";
				//url="javascript:opener.Form0.depaid="+nodeCode+";";
				Element curElement = doc.createElement("node");
				curElement.setAttribute("id",nodeCode);
				curElement.setAttribute("name",nodeName);
				curElement.setAttribute("show","yes");
				curElement.setAttribute("target",treeElement.getTarget());
				curElement.setAttribute("img",showImg);
				curElement.setAttribute("url",url); 
				if(treeElement.getInputType() != "")
				{
					curElement.setAttribute("inputType",treeElement.getInputType());
					curElement.setAttribute("inputName",inputName);
					curElement.setAttribute("inputID","prod_" + nodeStr+ nodeCode + "$");
					curElement.setAttribute("inputValue",nodeCode);
				}
				curElement.setAttribute("openMode",openMode);
				 currentLayer = CharSetUtils.count(layer,"$");//或者 treeElement.getNodeCount();

				if(currentLayer > preLayer)
				{
					Element preElement = (Element)myStack.peek();
					preElement.appendChild(curElement);
					myStack.push(curElement);
				}
				else if(currentLayer == preLayer)
				{
					myStack.pop();
					Element preElement = (Element)myStack.peek();
					preElement.appendChild(curElement);
					myStack.push(curElement);				
				}
				else
				{
					for(int i=0;i<(preLayer-currentLayer+1);i++)
					{
						myStack.pop();
					}
					Element preElement = (Element)myStack.peek();
					preElement.appendChild(curElement);
					myStack.push(curElement);
				}
				preLayer = currentLayer;
			}

			//doc.DocumentElement.AppendChild(xmlStart);
			 
			/*XmlTextWriter xmldoc = new XmlTextWriter( xmlCreatePath + xmlcreatename ,null);
			xmldoc.Formatting = Formatting.Indented;
			doc.WriteContentTo(xmldoc);
			xmldoc.Close();*/
			  
//			把XML文档输出到指定的文件
			  FileOutputStream outStream = new FileOutputStream(xmlCreatePath + xmlcreatename);
			  OutputStreamWriter outWriter = new OutputStreamWriter(outStream);
			  ((XmlDocument) doc).write(outWriter, "GBK");
			  outWriter.close();
			  outStream.close(); 

		} 
		catch (Exception e) 
		{
			System.out.println("The process failed: "+ e.getMessage());
		}

	}


}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -