正規表現の束を含むソーステキストファイルがあります。テキストファイルを読み、正規表現の一致を配列インデックスに割り当て、DOMを使用してXMLを作成しています。
ただし、結果のXMLドキュメントに追加する必要のある定型的な情報がいくつかあります。何百もの新しい複雑なネストされたDOM要素を作成する代わりに、element.setTextContent(someBoilerPlateXML)を使用してXMLボイラープレート情報をXMLDOM要素の1つにドロップしたいと思います。
これを行うためにorg.apache.commons.lang3.StringEscapeUtils.unescapeHtml4を試しています。System.out.println(someBoilerPlateXML)テストでは機能するようですが、element.setTextContent(someBoilerPlateXML)実装では機能しません。
例えば:
入力:
String test = org.apache.commons.lang3.StringEscapeUtils.unescapeHtml4("<Hello id=\"id\"/>");
System.out.println(test);
出力:
<Hello id="id"/>
入力: Element element= doc.createElement("element");
element.setTextContent(org.apache.commons.lang3.StringEscapeUtils.unescapeHtml4("<Hello id=\"id\">"));
結果のXMLファイルに出力します。
<Hello id="id"/>
なぜそれがこれを行うのですか、そしてどうすればそれを正しくすることができますか?代わりに使用する必要がある別の無料パッケージはありますか?