ホームページ > Java > &#&チュートリアル > DOM と Transformer API を使用して Java で XML ファイルを読み書きするにはどうすればよいですか?

DOM と Transformer API を使用して Java で XML ファイルを読み書きするにはどうすればよいですか?

Patricia Arquette
リリース: 2024-11-30 10:28:19
オリジナル
454 人が閲覧しました

How Can I Read and Write XML Files in Java Using DOM and Transformer API?

XML ファイルの読み取りと書き込み: 初心者ガイド

XML は、データの交換と保存において重要な役割を果たします。 XML ファイルを効率的に管理するには、Java を使用して XML ファイルを読み書きする方法を理解することが不可欠です。このガイドでは、プロセスを段階的に説明します。

XML ファイルの読み取り

XML ファイルを読み取るには、ドキュメント オブジェクト モデル (DOM) を使用します。 。 DOM は、XML ドキュメントを表すツリー状の構造を提供します。その方法は次のとおりです:

  1. 必要なライブラリをインポートします:

    import javax.xml.parsers.*;
    import javax.xml.transform.*;
    import javax.xml.transform.dom.*;
    import javax.xml.transform.stream.*;
    import org.xml.sax.*;
    import org.w3c.dom.*;
    ログイン後にコピー
  2. ドキュメント ビルダーを作成します:

    DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
    DocumentBuilder db = dbf.newDocumentBuilder();
    ログイン後にコピー
  3. XML を解析するファイル:

    Document dom = db.parse(xml);
    ログイン後にコピー
  4. ルート要素を取得します:

    Element doc = dom.getDocumentElement();
    ログイン後にコピー
  5. 要素からデータを抽出します:
    次のコードは取得します「role1」要素のテキスト値を例:

    String role1 = getTextValue(doc.getElementsByTagName("role1"));
    ログイン後にコピー

XML ファイルの書き込み

XML ファイルを書き込むには、Transformer API を使用します。方法は次のとおりです:

  1. ドキュメントの作成:

    DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
    DocumentBuilder db = dbf.newDocumentBuilder();
    Document dom = db.newDocument();
    ログイン後にコピー
  2. ルート要素の作成:

    Element rootEle = dom.createElement("roles");
    ログイン後にコピー
  3. データ要素をroot:

    Element e = dom.createElement("role1");
    e.appendChild(dom.createTextNode(role1));
    rootEle.appendChild(e);
    ログイン後にコピー
  4. ルート要素をドキュメントに追加します:

    dom.appendChild(rootEle);
    ログイン後にコピー
  5. トランスフォーマーを作成します:

    Transformer tr = TransformerFactory.newInstance().newTransformer();
    ログイン後にコピー
  6. 出力の設定プロパティ:

    tr.setOutputProperty(OutputKeys.INDENT, "yes");
    tr.setOutputProperty(OutputKeys.METHOD, "xml");
    tr.setOutputProperty(OutputKeys.ENCODING, "UTF-8");
    tr.setOutputProperty(OutputKeys.DOCTYPE_SYSTEM, "roles.dtd");
    ログイン後にコピー
  7. DOM をファイルに書き込みます:

    tr.transform(new DOMSource(dom), new StreamResult(new FileOutputStream(xml)));
    ログイン後にコピー

ヘルパー メソッド

このヘルパー メソッドを使用して XML からテキスト値を抽出します要素:

private String getTextValue(NodeList nl) {
    String value = null;
    if (nl.getLength() > 0 && nl.item(0).hasChildNodes()) {
        value = nl.item(0).getFirstChild().getNodeValue();
    }
    return value;
}
ログイン後にコピー

結論

このガイドでは、DOM と Transformer API を使用した Java での XML ファイルの読み取りと書き込みの包括的な概要を説明しました。データを効果的に操作するには、アクセサーとミューテーターを忘れずに実装してください。

以上がDOM と Transformer API を使用して Java で XML ファイルを読み書きするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート