既存のファイルから1つのノードをコピーして別のファイルに貼り付けようとしています。何もない。私はそれはそれを行うために得ることができるかどうかを確認するためにノードを挿入するいくつかのコードをも持っていますが、私はむしろ見事に失敗した:)すべてのヘルプは大Ant XMLTaskは既存のXMLファイルに新しいxmlノードを挿入できません
ベースのXMLファイルいただければ幸いです。(input.xmlに)
<?xml version="1.0" encoding="UTF-8"?>
<foo>
<bar>
<tests>
<test id="1"/>
<test id="2"/>
</tests>
</bar>
</foo>
を私が実行している
Antターゲット:
<target name="copy">
<xmltask source="input.xml" dest="1.xml">
<copy path="/foo/bar/tests/test[@id='1']" buffer="storedXml" />
</xmltask>
</target>
<target name="paste-xml" depends="define-tasks,copy">
<xmltask source="input.xml" dest="output.xml">
<insert path="/foo/bar/tests/test[last()]" file="output.xml" buffer="storedXml"/>
</xmltask>
</target>
<target name="insert-xml" depends="define-tasks">
<xmltask source="input.xml" dest="output.xml">
<insert path="/foo/bar/tests/test[last()]" file="output.xml">
<![CDATA[
<test id="3"/>
]]>
</insert>
</xmltask>
</target>
<target name="write-config" depends="define-tasks">
<delete file="output.xml" failonerror="false"/>
<echoxml file="output.xml">
<foo>
<bar>
<tests/>
</bar>
</foo>
</echoxml>
</target>
どんな質問があるように思えません...してください、seconf XMLドキュメントを提供し、あなたは「挿入する必要がそこに? "ノードを最初のXML文書から削除します。最初の文書のどのノードを2番目の文書に挿入する必要があるかを指定してください。 2番目の文書のどこにノードを挿入するかを正確に指定してください。 –
また、この質問はXPathと何が関係していますか? XMLドキュメントにノードを挿入することは、XMLドキュメントのクエリ言語(唯一)であるXPathでは実行できません。そのため、XMLドキュメントを作成/変更できません。 –
antのXMLTaskは、Xpath記法を使用します。 write-configターゲットを見ると、そこにxmlが入っているoutput.xmlという名前のファイルが作成されていることがわかります。 <テストID = "3" /> –
gdoubleod