解決名前空間のxmlnsについて質問があるDOM4J、未解決

BIRTプロジェクトの開発では、状況はxmlファイルのBIRTレポート生成の解析でエラーが発生し、その解決にDOM4Jを使用することにしました。[あなたはdom4j.jarをダウンロードする必要があり、にJaxen-1.1-ベータ 10.jar] これら2つのライブラリ。 。そして最初にJaxenを含むようにエラーに起因忘れ
:XMLコードの例を
<レポートのxmlns =「http://www.eclipse.org/birt/2005/design」バージョン=「3.2.15」は、上述したID =「1」>
    <プロパティ名= -リスト"cssStyleSheets">
        <構成>
            <プロパティ名= "FILENAME"> D:eport.css </プロパティ>
        </構成>
    </リスト・プロパティ>
</レポート>
I一般的な分析方法のDOM4Jに従い、我々は、符号化される:
パブリッククラスTransferXML {
    静的な無効メイン(文字列[] args)を公衆が例外をスロー{
        SAXReader SAXReader新しい新しいSAXReader =();
        ファイルファイル=新しい新しいファイル( "D:/test.xml")。
        文書ドキュメント= saxReader.read(ファイル);
        TMP = document.selectNodesリスト(「//リスト・プロパティ」);
        のSystem.out.println(tmp.size());
    }
}
結果出力でないI 1 0が想定される
とコードは、それが必要、比較的簡単です問題はありません。そして、私は別のXMLファイルを見つけ、結果は成功ノードを見つけることができます。
比較ツールを使用して2つのXMLファイルのためには、結果のxmlnsにあり唯一の違いを比較する。.faintがありません... ...
オンライン関連情報を検索する、またはAPIなど2つの解決策を検討する。検索するためにインターネットから取られている最初のもの、暫定的に、私を訴えるしないでください(ここでは参照だけを書きます。)恐ろしい
。第一の実施形態
パブリッククラスTransferXML {
    公共の静的な無効メイン(文字列[] args)は例外{スロー
        新しい= HashMapの()新しい地図地図;
        map.put( "デザイン"、「HTTP:// WWW .eclipse.org / BIRT / 2005 /デザイン");
        SAXReader SAXReader新しい新SAXReader =();
        ファイルファイル=新しい新しいファイル(" D:/test.xml「);
        文書ドキュメント= SAXReader。(ファイル)を読み込みます。
        XPathのX = document.createXPath( "//デザイン:リストプロパティ");
        x.setNamespaceURIs(マップ)
        リストノードリスト= x.selectNodes(文書)。
        System.out.println(nodelist.size())。
    }
}
第二个解决方案:
パブリッククラスTransferXML {
    公共の静的な無効メイン(文字列[]引数)スロー例外{
        地図の地図=新規HashMapの()。
        map.put( "デザイン"、 "http://www.eclipse.org/birt/2005/design");
        SAXReader saxReader =新しいSAXReader();
        ファイルファイル=新しいファイル( "D:/test.xml");
        saxReader.getDocumentFactory()setXPathNamespaceURIs(マップ)。
        文書ドキュメント= saxReader.read(ファイル);
        = document.selectNodesリストTMP( "//デザイン:リスト-プロパティ");
        System.out.printlnは(tmp.size());
    }
}
これとは対照的に、私はまだ第二の方法を好む。
あなたの場合そこより良い方法は、ある参照だけのために私と一緒に滞在することができます。
--------------------- 
著者:anyoneking 
ソース:CSDNの 
元:https://でブログ.csdn.net / anyoneking /記事/詳細/  2077074
免責条項:この記事はブロガーのオリジナルの記事、再現され、ボーエンのリンクを添付してください!

おすすめ

転載: blog.csdn.net/xingqibaing/article/details/91881270