我有以下问题。在Java应用程序中,我必须使用 XPath 创建一个新的XML内容(我总是使用它来解析XML文件并在其标记内获取值,我是否也可以使用它来构建新的XML内容?)
所以我的最终结果(必须保存在数据库CLOB字段上,而不是保存在.xml文件中,但我认为这不重要)必须是这样的:
<?xml version="1.0" encoding="ISO-8859-1"?>
<Messaggio>
<Intestazione>
<Da>06655971007</Da>
<A>01392380547</A>
<id>69934</id>
<idEnel/>
<DataInvio>2015-05-06</DataInvio>
<DataRicezione/>
<InRisposta/>
<TipoDoc>Ricevuta</TipoDoc>
</Intestazione>
<Documenti>
<Ricevuta>
<Testata>
<Documento>
<Tipo>380</Tipo>
<NumeroDocumento>ff</NumeroDocumento>
<Stato>KO</Stato>
<Data>2014-03-10</Data>
</Documento>
</Testata>
<Dettaglio>
<Messaggio>
<Codice>000</Codice>
<Descrizione>Documento NON Conforme / NON dovuto</Descrizione>
</Messaggio>
</Dettaglio>
</Ricevuta>
</Documenti>
</Messaggio>
所以我需要做的是以编程方式添加节点和这些节点的内容(内容是从模型对象中获取的)。
我可以使用 XPath 吗?怎么样?
TNX
答案 0 :(得分:1)
XPath是一种用于在XML文档中定位节点的API。它无法创建新节点或操纵现有节点。所以你需要的是找到要使用XPath修改的节点,然后使用找到的节点的API来进行更改。
但在你的情况下,你是从一个空文件开始的。查看像JDOM 2这样的框架,从头开始构建XML文档。本教程可以帮助您入门:http://www.studytrails.com/java/xml/jdom2/java-xml-jdom2-example-usage.jsp
答案 1 :(得分:1)
你做不到。 XPath是一种匹配技术,而不是内容创建技术。可能你在寻找XSLT?