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

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

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

    數(shù)據(jù)加載中……
    采用org.w3c.dom進(jìn)行XML操作,包括查找、新增、刪除、修改結(jié)點(diǎn)

    /**
    * 類名XmlOperate<p>
    * 編寫者 :java_god<p>
    **/

    public class XmlOperate
    {

       
        /**
        * 方法名稱:getNodeList<p>
        * 方法功能:獲取父結(jié)點(diǎn)parent的所有子結(jié)點(diǎn)<p>
        * 參數(shù)說明:@param parent
        * 參數(shù)說明:@return <p>
        * 返回:NodeList <p>
        * 作者:luoc
        * 日期:2005-6-22
        **/
        public static NodeList getNodeList(Element parent)
        {
            return parent.getChildNodes();
        }
       
        /**
        * 方法名稱:getElementsByName<p>
        * 方法功能:在父結(jié)點(diǎn)中查詢指定名稱的結(jié)點(diǎn)集            <p>
        * 參數(shù)說明:@param parent
        * 參數(shù)說明:@param name
        * 參數(shù)說明:@return <p>
        * 返回:Element[] <p>
        * 作者:luoc
        * 日期:2005-6-22
        **/
        public static Element [] getElementsByName(Element parent,String name)
        {
            ArrayList resList=new ArrayList();
            NodeList nl=getNodeList(parent);
            for(int i=0;i<nl.getLength();i++)
            {
                Node nd=nl.item(i);
                if(nd.getNodeName().equals(name))
                {
                    resList.add(nd);
                }
            }
            Element [] res=new Element [resList.size()];
            for(int i=0;i<resList.size();i++)
            {
                res[0]=(Element)resList.get(i);
            }       
            logger.debug(parent.getNodeName()+"'s children of "+name+
                    "'s num:"+res.length);
            return res;
        }
       
        /**
        * 方法名稱:getElementName<p>
        * 方法功能:獲取指定Element的名稱            <p>
        * 參數(shù)說明:@param element
        * 參數(shù)說明:@return <p>
        * 返回:String <p>
        * 作者:luoc
        * 日期:2005-6-22
        **/
        public static String getElementName(Element element)
        {
            return element.getNodeName();
        }
       
        /**
        * 方法名稱:getElementValue<p>
        * 方法功能:獲取指定Element的值<p>
        * 參數(shù)說明:@param element
        * 參數(shù)說明:@return <p>
        * 返回:String <p>
        * 作者:luoc
        * 日期:2005-6-22
        **/
        public static String getElementValue(Element element)
        {
            NodeList nl=element.getChildNodes();
            for(int i=0;i<nl.getLength();i++)
            {
                if(nl.item(i).getNodeType()==Node.TEXT_NODE)//是一個(gè)Text Node
                {           
                    logger.debug(element.getNodeName()+" has a Text Node.");
                    return element.getFirstChild().getNodeValue();
                }
            }  
            logger.error(element.getNodeName()+" hasn't a Text Node.");
            return null;
        }
       
        /**
        * 方法名稱:getElementAttr<p>
        * 方法功能:獲取指定Element的屬性attr的值            <p>
        * 參數(shù)說明:@param element
        * 參數(shù)說明:@param attr
        * 參數(shù)說明:@return <p>
        * 返回:String <p>
        * 作者:luoc
        * 日期:2005-6-22
        **/
        public static String getElementAttr(Element element,String attr)
        {
            return element.getAttribute(attr);
        }
       
        /**
        * 方法名稱:setElementValue<p>
        * 方法功能:設(shè)置指定Element的值            <p>
        * 參數(shù)說明:@param element
        * 參數(shù)說明:@param val <p>
        * 返回:void <p>
        * 作者:luoc
        * 日期:2005-6-22
        **/
        public static void setElementValue(Element element,String val)
        {
            Node node=element.getOwnerDocument().createTextNode(val);
            NodeList nl=element.getChildNodes();
            for(int i=0;i<nl.getLength();i++)
            {
                Node nd=nl.item(i);
                if(nd.getNodeType()==Node.TEXT_NODE)//是一個(gè)Text Node
                {           
                      nd.setNodeValue(val);
                      logger.debug("modify "+element.getNodeName()+"'s node value succe.");
                      return;
                }
            }  
            logger.debug("new "+element.getNodeName()+"'s node value succe.");
            element.appendChild(node);       
        }
       
        /**
        * 方法名稱:setElementAttr<p>
        * 方法功能:設(shè)置結(jié)點(diǎn)Element的屬性<p>
        * 參數(shù)說明:@param element
        * 參數(shù)說明:@param attr
        * 參數(shù)說明:@param attrVal <p>
        * 返回:void <p>
        * 作者:luoc
        * 日期:2005-6-22
        **/
        public static void setElementAttr(Element element,
                String attr,String attrVal)
        {
            element.setAttribute(attr,attrVal);
        }
       
       
        /**
        * 方法名稱:addElement<p>
        * 方法功能:在parent下增加結(jié)點(diǎn)child<p>
        * 參數(shù)說明:@param parent
        * 參數(shù)說明:@param child <p>
        * 返回:void <p>
        * 作者:luoc
        * 日期:2005-6-22
        **/
        public static void addElement(Element parent,Element child)
        {
            parent.appendChild(child);
        }
       
        /**
        * 方法名稱:addElement<p>
        * 方法功能:在parent下增加字符串tagName生成的結(jié)點(diǎn)<p>
        * 參數(shù)說明:@param parent
        * 參數(shù)說明:@param tagName <p>
        * 返回:void <p>
        * 作者:luoc
        * 日期:2005-6-22
        **/
        public static void addElement(Element parent,String tagName)
        {       
            Document doc=parent.getOwnerDocument();
            Element child=doc.createElement(tagName);
            parent.appendChild(child);
        }
       
        /**
        * 方法名稱:addElement<p>
        * 方法功能:在parent下增加tagName的Text結(jié)點(diǎn),且值為text<p>
        * 參數(shù)說明:@param parent
        * 參數(shù)說明:@param tagName
        * 參數(shù)說明:@param text <p>
        * 返回:void <p>
        * 作者:luoc
        * 日期:2005-6-22
        **/
        public static void addElement(Element parent,String tagName,String text)
        {
            Document doc=parent.getOwnerDocument();
            Element child=doc.createElement(tagName);
            setElementValue(child,text);
            parent.appendChild(child);
        }
       
        /**
        * 方法名稱:removeElement<p>
        * 方法功能:將父結(jié)點(diǎn)parent下的名稱為tagName的結(jié)點(diǎn)移除<p>
        * 參數(shù)說明:@param parent
        * 參數(shù)說明:@param tagName <p>
        * 返回:void <p>
        * 作者:luoc
        * 日期:2005-6-22
        **/
        public static void removeElement(Element parent,String tagName)
        {
            logger.debug("remove "+parent.getNodeName()+"'s children by tagName "+tagName+" begin...");
            NodeList nl=parent.getChildNodes();
            for(int i=0;i<nl.getLength();i++)
            {
                Node nd=nl.item(i);
                if(nd.getNodeName().equals(tagName))
                {
                    parent.removeChild(nd);
                    logger.debug("remove child '"+nd+"' success.");
                }
            }
            logger.debug("remove "+parent.getNodeName()+"'s children by tagName "+tagName+" end.");
        }
       
       
        /*全局變量*/   
        static Logger logger=Logger.getLogger("XmlOper");
    }

    posted on 2008-02-24 14:30 java flex 結(jié)合 閱讀(1197) 評(píng)論(0)  編輯  收藏 所屬分類: xml

    主站蜘蛛池模板: 久久九九全国免费| 国产免费人成视频尤勿视频| 在线免费观看你懂的| 亚洲av无码一区二区乱子伦as| 国产V片在线播放免费无码| 亚洲精品人成无码中文毛片| 无套内射无矿码免费看黄| 亚洲AV无码乱码在线观看性色扶| 久久久久久久久无码精品亚洲日韩 | 久久久精品免费视频| 亚洲爆乳精品无码一区二区三区 | 嫩草影院在线播放www免费观看| 在线精品亚洲一区二区小说| 国产一级在线免费观看| 亚洲av综合av一区| 久久ww精品w免费人成| 亚洲国产精品网站久久| 成年人在线免费看视频| 国产成人亚洲毛片| 久久久久久久综合日本亚洲| 久久99国产综合精品免费| 亚洲一区二区三区91| 国产精品久久香蕉免费播放| 日韩大片免费观看视频播放| 亚洲精品无码专区久久久 | 日产亚洲一区二区三区| 国产情侣激情在线视频免费看| 国产精品亚洲综合久久| 免费h黄肉动漫在线观看| 三上悠亚电影全集免费| 亚洲午夜精品一区二区公牛电影院| 男女啪啪永久免费观看网站| 国产精品无码永久免费888 | 一区二区亚洲精品精华液| 亚洲av无码天堂一区二区三区 | 午夜亚洲乱码伦小说区69堂| 国产精品亚洲片在线观看不卡| 在线观看av永久免费| 国产日韩久久免费影院| 亚洲三级在线免费观看| 亚洲国产精品碰碰|