使用Qt-DOM更新XML文件
我有一个应用程序,它构建了一个基于树Qt组件的左菜单。为了加载它,我需要解析一个XML文件。XML文件如下所示:使用Qt-DOM更新XML文件,xml,qt,dom,Xml,Qt,Dom,我有一个应用程序,它构建了一个基于树Qt组件的左菜单。为了加载它,我需要解析一个XML文件。XML文件如下所示: <comandos> <categoria> <nome>Cupom fiscal</nome> <comando> <nome>01 - Abrir Cupom Fiscal</
<comandos>
<categoria>
<nome>Cupom fiscal</nome>
<comando>
<nome>01 - Abrir Cupom Fiscal</nome>
<env>3</env>
<rec>4</rec>
<desc>CNPJ / CPF : </desc>
<desc>Nome : </desc>
<desc>Endereco: </desc>
</comando>
</categoria>
</comandos>
似乎使用qtdom来解析和创建XML文件是相当不错的,但它缺少更新工具。任何帮助都将不胜感激,哪怕是一个例子
这里的另一个线程看起来很有用
我在互联网上查找了更新XML文件的示例。似乎如果我捕捉到当前节点,我可以向其中添加一个子节点,但到目前为止,我还不知道如何添加
谢谢你的帮助,也很抱歉我的无知。
QDomElement newCategoriaTag = doc.createElement(QString("categoria"));
QDomElement newNomeTag = doc.createElement(QString("nome"));
QDomText newNomeText = doc.createTextNode(QString("Cupom fiscal 2"));
newNomeTag.appendChild(newNomeText);
newCategoriaTag.appendChild(newNomeTag);
root.appendChild(newCategoriaTag);
这将导致:
<comandos>
<categoria>
<nome>Cupom fiscal</nome>
<comando>
<nome>01 - Abrir Cupom Fiscal</nome>
<env>3</env>
<rec>4</rec>
<desc>CNPJ / CPF : </desc>
<desc>Nome : </desc>
<desc>Endereco: </desc>
</comando>
</categoria>
<categoria>
<nome>Cupom fiscal 2</nome>
</categoria>
</comandos>
库普姆财政部
01-Abrir Cupom财政部
3.
4.
CNPJ/CPF:
诺姆:
恩德雷科:
Cupom财政2
除了您提到的答案之外,您还想要什么?您好,我想更新节点。例如,用户将键入类别、命令和其他数据,这需要在XML中更新。我没有找到如何插入新节点,而是基于以前存在的节点。
QDomElement newCategoriaTag = doc.createElement(QString("categoria"));
QDomElement newNomeTag = doc.createElement(QString("nome"));
QDomText newNomeText = doc.createTextNode(QString("Cupom fiscal 2"));
newNomeTag.appendChild(newNomeText);
newCategoriaTag.appendChild(newNomeTag);
root.appendChild(newCategoriaTag);
<comandos>
<categoria>
<nome>Cupom fiscal</nome>
<comando>
<nome>01 - Abrir Cupom Fiscal</nome>
<env>3</env>
<rec>4</rec>
<desc>CNPJ / CPF : </desc>
<desc>Nome : </desc>
<desc>Endereco: </desc>
</comando>
</categoria>
<categoria>
<nome>Cupom fiscal 2</nome>
</categoria>
</comandos>