JavaでXMLファイルを変更する方法-(JDOMパーサー)
JDOM XML parserの既存のXMLファイルを変更する例:
-
新しい要素を追加する
-
既存の要素属性を更新する
-
既存の要素値を更新する
-
既存の要素を削除
1. XMLファイル
XMLファイルの前後を参照してください。
File : file.xml –元のXMLファイル。
yong mook kim example 5000
後で、JDOM XMLパーサーを介して上記のXMLファイルを更新します。
-
スタッフの下に新しい「年齢」要素を追加する
-
スタッフ属性id = 2を更新します
-
給与値を7000に更新します
-
スタッフの下の「名」要素を削除する
File : file.xml –新しく変更されたXMLファイル。
mook kim example 7000 28
2. JDOMの例
既存のXMLファイルを更新または変更するためのJDOMパーサー。
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
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 ModifyXMLFile {
public static void main(String[] args) {
try {
SAXBuilder builder = new SAXBuilder();
File xmlFile = new File("c:\\file.xml");
Document doc = (Document) builder.build(xmlFile);
Element rootNode = doc.getRootElement();
// update staff id attribute
Element staff = rootNode.getChild("staff");
staff.getAttribute("id").setValue("2");
// add new age element
Element age = new Element("age").setText("28");
staff.addContent(age);
// update salary value
staff.getChild("salary").setText("7000");
// remove firstname element
staff.removeChild("firstname");
XMLOutputter xmlOutput = new XMLOutputter();
// display nice nice
xmlOutput.setFormat(Format.getPrettyFormat());
xmlOutput.output(doc, new FileWriter("c:\\file.xml"));
// xmlOutput.output(doc, System.out);
System.out.println("File updated!");
} catch (IOException io) {
io.printStackTrace();
} catch (JDOMException e) {
e.printStackTrace();
}
}
}