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

📄 tcuxmltodataset.java

📁 为公司做的质量考核接口源码,用spring,hibernate,XML实现,对XML接口编程很有帮助
💻 JAVA
字号:
package com.jr81.source.xml;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.List;

import org.jdom.Document;
import org.jdom.Element;
import org.jdom.input.SAXBuilder;
import org.jdom.output.Format;
import org.jdom.output.XMLOutputter;

import com.jr81.source.dataset.TcuDataRecord;
import com.jr81.source.dataset.TcuFieldValue;
import com.jr81.source.dataset.TcuTableDataPkg;

public class TcuXmlToDataset {

	public TcuXmlToDataset() {
		super();
		// TODO 自动生成构造函数存根
	}

	public static boolean XmlToDataset(InputStream xml,TcuTableDataPkg dataset){
		try{
			SAXBuilder sb = new SAXBuilder();
			Document doc = sb.build(xml);
			Element root = doc.getRootElement(); //得到根元素
			List records = root.getChildren(); //得到根元素所有子元素的集合
			Element record =null;
			Element field =null;
			dataset.Clear();			
			for(int i=0;i<records.size();i++){
				TcuDataRecord rec = new TcuDataRecord();
				record = (Element)records.get(i ); //得到第一本书元素
				List fields=record.getChildren();
				for (int j=0;j<fields.size();j++){
					TcuFieldValue fv=new TcuFieldValue();
					field=(Element)fields.get(j);
					fv.setFieldName(field.getName());
					fv.setFieldValue(field.getValue());
					rec.AddItem(fv);
				}
				dataset.getDataRecordList().AddItem(rec);
			}
			return true;
		}catch(Exception e){
			System.err.println(e+"error");		
			return false;
		}
	}
	
	public static boolean DatasetToXml(TcuTableDataPkg dataset,OutputStream xml){
		String xml_text=null;
		try{			
			xml_text="<?xml version='1.0' encoding='GBK'?><TableDataPkg>";
			TcuDataRecord rec =null;
			TcuFieldValue fv=null;
			
			for (int i=0;i<dataset.getDataRecordList().GetCount();i++){
				rec=(TcuDataRecord) dataset.getDataRecordList().GetItem(i);
				xml_text+="<DataRecord>";
				for (int j=0;j<rec.GetCount();j++){
					fv=(TcuFieldValue) rec.GetItem(j);
					xml_text+="<"+fv.getFieldName()+">"+new String(fv.getFieldValue())+"</"+fv.getFieldName()+">";
				}
				xml_text+="</DataRecord>";
			}
			xml_text+="</TableDataPkg>";
			SAXBuilder sb = new SAXBuilder();
			Document doc = sb.build(xml_text);

			Format format = Format.getPrettyFormat();
			format.setEncoding("GB2312");

			XMLOutputter xmlout = new XMLOutputter(); 
			xmlout.setFormat(format);
			xmlout.output(doc, xml); 
			
			return true;
		}catch(Exception e){
			System.err.println(e+"error");
		}	
		return false;
	}
	/**
	 * @param args
	 * @throws FileNotFoundException 
	 */
	public static void main(String[] args) throws FileNotFoundException {
		// TODO 自动生成方法存根
		TcuTableDataPkg dataset=new TcuTableDataPkg();
		dataset.LoadFromFile("c:/test/tbpkg.txt");
		OutputStream xml=new FileOutputStream("c:/test2.txt");
		DatasetToXml(dataset,xml);
	}

}

⌨️ 快捷键说明

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