写xml
QDomDocument doc;
QDomProcessingInstruction instruction = doc.createProcessingInstruction("xml", "version=\"1.0\" encoding=\"UTF-8\"");
doc.appendChild(instruction);
QDomElement root = doc.createElement("HInfoData");//创建根节点
doc.appendChild(root);//添加根节点
QDomElement strMac = doc.createElement("Mac");//创建元素节点
root.appendChild(strMac);//添加元素节点到根节点
QDomText strMacNodeText = doc.createTextNode(data._strMac);//创建元素文本
strMac.appendChild(strMacNodeText);//添加元素文本到元素节点
保存成xml文件
QFile file("./test.xml");
if (!file.open(QIODevice::WriteOnly | QIODevice::Truncate | QIODevice::Text))
return false;
QTextStream out(&file);
out.setCodec("UTF-8");
doc.save(out, 4, QDomNode::EncodingFromTextStream);
file.close();
读xml文件
QDomDocument doc;
QFile file("./test.xml");
if (!file.open(QIODevice::ReadOnly))
{
return false;
}
if (!doc.setContent(&file))
{
file.close();
return false;
}
file.close();
QDomElement root = doc.documentElement();//读取根节点
QDomNode node = root.firstChild();//读取第一个子节点
while (!node.isNull())
{
QString tagName = node.toElement().tagName();
if (tagName.compare("Mac") == 0) //节点标记查找
{
infodata._strMac = node.toElement().text();//读取节点文本
}
else if (tagName.compare("System") == 0)
{
infodata._strSystem = node.toElement().text();
}
node = node.nextSibling();//读取下一个兄弟节点
}
以上为别的博主博客内容,给上链接
原博文点这查看