<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    捕風(fēng)之巢

    統(tǒng)計

    留言簿(3)

    java友情鏈接

    閱讀排行榜

    評論排行榜

    采用org.w3c.dom進(jìn)行XML操作(三) (轉(zhuǎn)載)

    采用org.w3c.dom進(jìn)行XML操作(三)
    ?

    XmlCreater.java

    ?用于創(chuàng)建XML文件

    /********************************************************************
    ?* 項目名稱????:rochoc???<p>
    ?* 包名稱? ????:rochoc.xml.oper?<p>
    ?* 文件名稱????:XmlCreater???<p>
    ?* 編寫者 ????:luoc????<p>
    ?* 編寫日期????:2005-6-22????<p>
    ?* 程序功能(類)描述?:?創(chuàng)建DOM并生成XML文件????? <p>
    ?*
    ?* 程序變更日期???:
    ?* 變更作者????:
    ?* 變更說明????:
    ********************************************************************/
    package rochoc.xml.oper;

    import java.io.File;

    import javax.xml.parsers.DocumentBuilder;
    import javax.xml.parsers.DocumentBuilderFactory;
    import javax.xml.parsers.ParserConfigurationException;
    import javax.xml.transform.Transformer;
    import javax.xml.transform.TransformerConfigurationException;
    import javax.xml.transform.TransformerException;
    import javax.xml.transform.TransformerFactory;
    import javax.xml.transform.dom.DOMSource;
    import javax.xml.transform.stream.StreamResult;

    import org.apache.log4j.Logger;
    import org.w3c.dom.Document;
    import org.w3c.dom.Element;

    /**
    ?* 類名:XmlCreater? <p>
    ?* 類描述: 創(chuàng)建DOM并生成XML文件<p>
    ?* 編寫者 :luoc<p>
    ?* 編寫日期 :2005-6-22<p>
    ?* 主要public成員變量:<p>
    ?* 主要public方法:?? <p>
    ?**/

    public class XmlCreater
    {
    ??? /**
    ???? *構(gòu)造函數(shù)說明:?????? <p>
    ???? *參數(shù)說明:@param path? xml文件路徑 <p>
    ??? **/
    ??? public XmlCreater(String path)
    ??? {
    ??????? this.path=path;
    ??????? init();
    ??? }
    ???
    ??? /**
    ??? * 方法名稱:init<p>
    ??? * 方法功能: 初始化函數(shù)?????????? <p>
    ??? * 參數(shù)說明: <p>
    ??? * 返回:void <p>
    ??? * 作者:luoc
    ??? * 日期:2005-6-22
    ??? **/
    ??? private void init()
    ??? {
    ??????? DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance();
    ??????? try
    ??????? {
    ??????????? DocumentBuilder builder=factory.newDocumentBuilder();
    ??????????? doc=builder.newDocument();//新建DOM
    ??????? }catch(ParserConfigurationException e)
    ??????? {
    ??????????? logger.error("Parse DOM builder error:"+e);
    ??????? }
    ??? }
    ???
    ??? /**
    ??? * 方法名稱:createRootElement<p>
    ??? * 方法功能:創(chuàng)建根結(jié)點,并返回??????????? <p>
    ??? * 參數(shù)說明:@param rootTagName <p>
    ??? * 返回:Element <p>
    ??? * 作者:luoc
    ??? * 日期:2005-6-22
    ??? **/
    ??? public Element createRootElement(String rootTagName)
    ??? {????
    ??????? if(doc.getDocumentElement()==null)
    ??????? {
    ??????????? logger.debug("create root element '"+rootTagName+"' success.");
    ??????????? Element root=doc.createElement(rootTagName);
    ??????????? doc.appendChild(root);
    ??????????? return root;
    ??????? }
    ??????? logger.warn("this dom's root element is exist,create fail.");
    ??????? return doc.getDocumentElement();
    ??? }
    ???
    ??? /**
    ??? * 方法名稱:createElement<p>
    ??? * 方法功能:在parent結(jié)點下增加子結(jié)點tagName<p>
    ??? * 參數(shù)說明:@param parent
    ??? * 參數(shù)說明:@param tagName <p>
    ??? * 返回:Element <p>
    ??? * 作者:luoc
    ??? * 日期:2005-6-22
    ??? **/
    ??? public Element createElement(Element parent,String tagName)
    ??? {
    ??????? Document doc=parent.getOwnerDocument();
    ??????? Element child=doc.createElement(tagName);
    ??????? parent.appendChild(child);???????
    ??????? return child;
    ??? }
    ???
    ??? /**
    ??? * 方法名稱:createElement<p>
    ??? * 方法功能:在parent結(jié)點下增加值為value的子結(jié)點tabName<p>
    ??? * 參數(shù)說明:@param parent
    ??? * 參數(shù)說明:@param tagName
    ??? * 參數(shù)說明:@param value <p>
    ??? * 返回:Element <p>
    ??? * 作者:luoc
    ??? * 日期:2005-6-22
    ??? **/
    ??? public Element createElement(Element parent,String tagName,String value)
    ??? {
    ??????? Document doc=parent.getOwnerDocument();
    ??????? Element child=doc.createElement(tagName);
    ??????? XmlOper.setElementValue(child,value);
    ??????? parent.appendChild(child);
    ??????? return child;
    ??? }
    ???
    ??? /**
    ??? * 方法名稱:createAttribute<p>
    ??? * 方法功能:在parent結(jié)點下增加屬性 <p>
    ??? * 參數(shù)說明:@param parent
    ??? * 參數(shù)說明:@param attrName 屬性名
    ??? * 參數(shù)說明:@param attrValue 屬性值<p>
    ??? * 返回:void <p>
    ??? * 作者:luoc
    ??? * 日期:2005-6-22
    ??? **/
    ??? public void createAttribute(Element parent,String attrName,String attrValue)
    ??? {
    ??????? XmlOper.setElementAttr(parent,attrName,attrValue);???????
    ??? }
    ???
    ??? /**
    ??? * 方法名稱:buildXmlFile<p>
    ??? * 方法功能:根據(jù)DOM生成XML文件<p>
    ??? * 參數(shù)說明: <p>
    ??? * 返回:void <p>
    ??? * 作者:luoc
    ??? * 日期:2005-6-22
    ??? **/
    ??? public void buildXmlFile()
    ??? {
    ??????? TransformerFactory tfactory=TransformerFactory.newInstance();
    ??????? try
    ??????? {
    ??????????? Transformer transformer=tfactory.newTransformer();
    ??????????? DOMSource source=new DOMSource(doc);
    ??????????? logger.debug("New DOMSource success.");
    ??????????? StreamResult result=new StreamResult(new File(path));
    ??????????? logger.debug("New StreamResult success.");
    ??????????? transformer.setOutputProperty("encoding","GBK");
    ??????????? transformer.transform(source,result);
    ??????????? logger.debug("Build XML File '"+path+"' success.");
    ??????? }catch(TransformerConfigurationException e)
    ??????? {
    ??????????? logger.error("Create Transformer error:"+e);
    ??????? }catch(TransformerException e)
    ??????? {
    ??????????? logger.error("Transformer XML file error:"+e);
    ??????? }
    ??? }
    ???
    ??? /**
    ???? * @return 返回 doc。
    ???? */
    ??? public Document getDoc()
    ??? {
    ??????? return doc;
    ??? }
    ??? /**
    ???? * @param doc 要設(shè)置的 doc。
    ???? */
    ??? public void setDoc(Document doc)
    ??? {
    ??????? this.doc = doc;
    ??? }
    ??? /**
    ???? * @return 返回 path。
    ???? */
    ??? public String getPath()
    ??? {
    ??????? return path;
    ??? }
    ??? /**
    ???? * @param path 要設(shè)置的 path。
    ???? */
    ??? public void setPath(String path)
    ??? {
    ??????? this.path = path;
    ??? }
    ??? /*全局變量*/
    ??? private Logger logger = Logger.getLogger(getClass().getName());
    ??? private Document doc=null;//新創(chuàng)建的DOM
    ??? private String path=null;//生成的XML文件絕對路徑
    }

    posted on 2007-03-22 14:50 捕風(fēng) 閱讀(731) 評論(0)  編輯  收藏 所屬分類: xml應(yīng)用

    主站蜘蛛池模板: 大胆亚洲人体视频| 免费人成年激情视频在线观看 | 97无码免费人妻超级碰碰夜夜| 亚洲gv白嫩小受在线观看| 国产精品免费久久久久影院| 国产一级淫片免费播放| 自拍偷自拍亚洲精品播放| 国产男女性潮高清免费网站| 色偷偷亚洲男人天堂| 免费人成网站在线播放| 一出一进一爽一粗一大视频免费的| 又黄又爽的视频免费看| 狠狠躁狠狠爱免费视频无码| 国产成人综合亚洲AV第一页 | 亚洲日韩国产欧美一区二区三区 | 免费涩涩在线视频网| 国产成人人综合亚洲欧美丁香花 | 国产精品亚洲不卡一区二区三区| sss在线观看免费高清| 亚洲综合精品香蕉久久网| 国产一级片免费看| 久久久久亚洲AV无码麻豆| 男女做羞羞的事视频免费观看无遮挡| 亚洲sss综合天堂久久久| 国产无遮挡吃胸膜奶免费看视频| 边摸边脱吃奶边高潮视频免费| 中文字幕亚洲一区| 222www在线观看免费| 亚洲成a∧人片在线观看无码 | 午夜老司机永久免费看片| 亚洲五月综合缴情婷婷| 亚洲国产高清在线一区二区三区 | 国产av无码专区亚洲av果冻传媒 | 成人永久福利免费观看| 精品国产呦系列在线观看免费 | 亚洲精品成a人在线观看☆| 亚洲桃色AV无码| 国国内清清草原免费视频99| 香港特级三A毛片免费观看| 中文字幕亚洲色图| 国产免费观看网站|