Dom4j を使ってXML操作

Javaを使ってXMLを処理したい。しかしJava標準パッケージのDom操作はどうもいけていない(参考:JavaでXMLを操作の4種類方法とサンプルソース )。ということで Dom4j を使用してXMLを操作することにした。

結果、下記のようにイケてる感じで処理できました。

import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;

public class Dom4jTest {
    public static void main(String[] args) {
        System.out.println("start");
        String xml = "<root><element name='toshi'>text1</element><element2>text2</element2></root>";
        try {
            Document doc = DocumentHelper.parseText(xml);
            // String s = doc.getRootElement().element("element").getText(); //Textとして取得
            // String s = doc.getRootElement().element("element").asXML(); //XMLとして取得
            // String s = doc.getRootElement().element("element").attributeValue("name");//nameのvalueを取得
            doc.getRootElement().element("element").setText("set text!");//Textをセット
            System.out.println(doc.asXML());
        } catch (DocumentException e) {
            e.printStackTrace();
        }
    }
}

参考