<?xml version="1.0" encoding="UTF-8" ?> 
<root>
  <sutdent>  
    <id>111</id> 
    <name>aaa</name> 
  </sutdent>
  <sutdent>  
    <id>222</id> 
    <name>bbbb</name> 
  </sutdent>
</root>
 
 <sutdent> 
    <id>333</id> 
    <name>ccc</name> 
  </sutdent>
上面是完整的xml文件,和要添加的xml片段,下面是实现添加的代码;
Element sutdent=root.addElement("student");
Element id=sutdent.addElement("id").addText("333");
Element name=sutdent.addElement("name").addText(ccc);如果把要添加的xml片段看成一个完整Element(其他方法返回的一个完整的Element),要把这个完整的Element添加到root中该怎么做?Element所有方法中只有一个一Element为参数的方法,add(Element element) ,
Element sutdent =this.getstu();//getstu返回的是一个完整的Element 
root.add(sutdent );//这句执行有错误,不能将整个Element 加入root
问题:(用的是dom4j)其他方法传过来的是一个完整的Element,可以把这个Element 拆开一项一项的添加,这样太麻烦;怎么样把Element 看成一个整体添加到root中呢?
 

解决方案 »

  1.   

    没太明白什么意思,怎么招不都得一项一项加到element里?
      

  2.   


    SAXReader saxReader = new SAXReader();
    File f = new File("e:/11.xml");
    Document d = saxReader.read(f);
    Element root = d.getRootElement();

    SAXReader saxReader2 = new SAXReader();
    File f2 = new File("e:/22.xml");
    Document d2 = saxReader2.read(f2);
    Element root2 = d2.getRootElement();

    root.add(root2);
    System.out.println(root.asXML());

    这样没有问题啊
      

  3.   


    /**
     * 加载类资源文件
     * @throws Exception
     */
    public void readParams() throws Exception {
    SAXReader reader = new SAXReader();
    Document document = null;
    try {
    InputStream in = getClass().getResourceAsStream("/class_config.xml");//资源文件
    document = reader.read(in);
    Element root = document.getRootElement();
    Element classInfo = root.element("INFO");
    Iterator Item = classInfo.elementIterator();
    while (Item.hasNext()) {
    Element item = (Element) Item.next();
    String tmp = StringUtil.trim(item.getText());
    String[] configStr = tmp.split("/");
    properties.put(configStr[0], configStr[1]);
    }
    } catch (Exception e) {
    Log4jUtil.logger.error(e);
    }  }
    资源文件的形式是:
    <CLASS>
    <INFO>
                                        <!-- 开通SP业务请求(101)-->
    <item>101/com.inspur.mportal.kjava.bossdeal.RegisterSpDeal</item>
            </INFO>
    </CLASS>