荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: hewlett (...), 信区: Java
标  题: reform JDOM tree
发信站: 荔园晨风BBS站 (Thu Aug  8 18:28:30 2002), 站内信件

贴一个我写的垃圾吧。
不知道这里什么时候能像水木的#java那么火热。
Lg最近不来指导弟弟妹妹了。

无优化,也懒得改个好听的变量名字
不想写注释。总之就是把一个选择的element变成root element
选定element的父,祖...全部顺次变成选定element的子,孙...
把reform()返回的element setRootElement到一个新的Document就行了

// reformJDOMTree.java


/* rebuild a JDOM Tree by setting any one Element that is already
   an Element of an exist JDOMTree, to a new Root Element.
   return the New ROOT Element including all its children
   ie:

       exist JDOMTree is:
                            java.awt.geom

        by setting "awt" as the new Root Element

       new JDOMTree is:

                            awt

                             /\

                            /  \

                        java    geom

*/



import org.jdom.Element;


public class reformJDOMTree {

        Element e_Parent;

        Element ee;

        Element root;



        public reformJDOMTree (Element e) {

                // e is the selected element

                ee = e;

                e_Parent = e.getParent();

                root = e.detach();



        }



        public Element reform(){



                e_Parent.removeContent(ee);

                Element eee = goup(e_Parent,ee);

                return (root.addContent(eee));

        }
        private Element goup(Element thisEle, Element toChildEle){



                if(thisEle.isRootElement()){

                        thisEle.detach().removeContent(toChildEle);

                        return (thisEle);

                }

                else{

                        Element ele = thisEle.getParent();

                        ele.removeContent(thisEle);

                        thisEle.addContent( goup(ele,thisEle) );

                        return (thisEle);

                }

        }

}


--
...

※ 修改:·hewlett 於 Aug  8 23:03:48 修改本文·[FROM: 131.227.74.2]
※ 来源:·荔园晨风BBS站 bbs.szu.edu.cn·[FROM: 131.227.74.2]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店