Avatar billede ullidk Nybegynder
18. april 2005 - 11:54 Der er 1 kommentar og
1 løsning

Sammenkobling af to XML dokumenter vha. JDOM

Hejsa,

Jeg har et kort, kontant spøgsmål:
Nogle der har et stykke kode til at sammenkoble to XML dokumenter med SAMME root element?`

På forhånd tak!
Avatar billede arne_v Ekspert
18. april 2005 - 20:16 #1
Der er sikkert mange måder. Men her er en:

package april;

import java.io.IOException;
import java.io.StringReader;

import org.jdom.Document;
import org.jdom.Element;
import org.jdom.JDOMException;
import org.jdom.input.SAXBuilder;
import org.jdom.output.Format;
import org.jdom.output.XMLOutputter;

public class XmlMerge {
    public static Document load(String s) throws JDOMException, IOException {
        SAXBuilder b = new SAXBuilder();
        return b.build(new StringReader(s));
    }
    public static void print(Document d) {
        XMLOutputter fmt = new XMLOutputter(Format.getPrettyFormat());
        System.out.println(fmt.outputString(d));
    }
    public static Document merge(Document d1, Document d2) throws JDOMException {
        Document doc = new Document();
        Element delm = new Element("d");
        doc.addContent(delm);
        delm.addContent(d1.getRootElement().cloneContent());
        delm.addContent(d2.getRootElement().cloneContent());
        return doc;
    }
    public static void main(String[] args) throws JDOMException, IOException {
        Document d1 = load("<d><e>a</e><e>bb</e></d>");
        print(d1);
        Document d2 = load("<d><e>ccc</e><e>dddd</e></d>");
        print(d2);
        Document d3 = merge(d1, d2);
        print(d3);
    }
}
Avatar billede ullidk Nybegynder
18. april 2005 - 20:35 #2
Nåede at finde ud af det selv, men din løsning er så nice så den skal du have point for:-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester