dom怎么修改xml节点文本值
1个回答
展开全部
void setElementText(const QString &tagName,const QVariant &tagValue)
{
try
{
QFile file(configFile());
QDomDocument doc;
if (!doc.setContent(&file))
{
file.close();
return ;
}
file.close();
QDomElement docElem = doc.documentElement();
QDomNodeList nodeList = docElem.elementsByTagName(tagName);
if (nodeList.count() >0 )
{
QDomElement el = nodeList.at(0).toElement();
QDomNode oldnode = el.firstChild();
el.firstChild().setNodeValue(tagValue.toString());
QDomNode newnode = el.firstChild();
el.replaceChild(newnode,oldnode);
if (!file.open(QIODevice::WriteOnly | QIODevice::Text))
{
return ;
}
QTextStream out(&file);
doc.save(out,4);
file.close();
}
}
catch (...)
{
return ;
}
}
{
try
{
QFile file(configFile());
QDomDocument doc;
if (!doc.setContent(&file))
{
file.close();
return ;
}
file.close();
QDomElement docElem = doc.documentElement();
QDomNodeList nodeList = docElem.elementsByTagName(tagName);
if (nodeList.count() >0 )
{
QDomElement el = nodeList.at(0).toElement();
QDomNode oldnode = el.firstChild();
el.firstChild().setNodeValue(tagValue.toString());
QDomNode newnode = el.firstChild();
el.replaceChild(newnode,oldnode);
if (!file.open(QIODevice::WriteOnly | QIODevice::Text))
{
return ;
}
QTextStream out(&file);
doc.save(out,4);
file.close();
}
}
catch (...)
{
return ;
}
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询