Private Boolean is Merging (String mainFileName,String sub Filename) throws Exception { Boolean isOver = false; DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); Document Builder db = null; Try { Db = dbf.newDocumentBuilder (); } Catch (ParserConfigurationException pce) { System.err.println(pce); //出现异常时,输出异常信息 } Document doc_main = null,doc_vice = null; //获取两个XML文件的Document。 Try { Doc_main = db.parse (mainFileName); Doc_vice = db.parse (sub Filename); } Catch (DOM Exception dom) { System.err.println (dom.getMessage ()); } Catch (Exception ioe) { System.err.println (ioe); } //获取两个文件的根元素。 Element root_main = doc_main.getDocumentElement (); Element root_vice = doc_vice.getDocumentElement (); //下面添加被合并文件根节点下的每个元素 Novelist message Items = root_vice.getChildNodes (); Int item_number = messageItems.getLength (); //如果去掉根节点下的第一个元素,比如<所属<nobr target="_blank" onmouSEOut="kwL(event,this);" onclick="return kwC();" style="border-bottom: 1px dotted rgb(102,255); color: rgb(102,255); background-color: transparent; text-decoration: underline;" onmouSEOver="kwE(event,this);" id="key0" onmousemove="kwM(0);" oncontextmenu="return false;">管理</nobr>系统> ,那么i从3开始。否则i从1开始。 For (int i=1; i < item_number; i=i+2 ) { //调用dupliate(),依次复制被合并XML文档中根节点下的元素。 Element messageItem = (Element) messageItems.item (i); IsOver = dupliate (doc_main,root_main,messageItem); } //调用 write To(),将合并得到的Document写入目标XML文档。 Boolean isWritten = write To (doc_main,mainFileName); Return isOver && isWritten; }