xml配置文件写入
bool WriteConFile()
{
QFile file("config.xml");
file.open(QIODevice::WriteOnly);
QXmlStreamWriter xmlstreamwriter(&file);
xmlstreamwriter.setAutoFormatting(true);
xmlstreamwriter.writeStartDocument();
xmlstreamwriter.writeStartElement("config");
xmlstreamwriter.writeStartElement("numberID");
xmlstreamwriter.writeAttribute("value", QString::number(numID));//写入int numID
xmlstreamwriter.writeEndElement();
xmlstreamwriter.writeStartElement("strName");
xmlstreamwriter.writeAttribute("value",name);//写入Qstring name
xmlstreamwriter.writeEndElement();
xmlstreamwriter.writeStartElement("MathScore");
xmlstreamwriter.writeAttribute("value",QString::number(dMScore,'f',6));//写入double dMScore
xmlstreamwriter.writeEndElement();
xmlstreamwriter.writeStartElement("AvgScore");
xmlstreamwriter.writeAttribute("value",QString::number(dAvgScore));//写入float dAvgScore
xmlstreamwriter.writeEndDocument();
xmlstreamwriter.writeEndElement();
file.close();
return true;
}
Xml配置文件读取
bool ReadConFile()
{
QFile file("config.xml");
QDomDocument *dom;
char* tmp_ptr;
if(file.open(QIODevice::ReadOnly))
{
dom = new QDomDocument();
if(!dom->setContent(&file))
{
qDebug() << "FaceRecognition::ReadConFile SetContent Failed!" << endl;
file.close();
}
else
{
qDebug() << "FaceRecognition::ReadConFile SetContent Succeed!" << endl;
}
QDomElement root = dom->documentElement();
QDomNodeList nodelist = root.childNodes();
for(int i = 0;i<nodelist.count();i++)
{
QDomNode node = nodelist.at(i);
if(node.nodeName() == "numberID")
{
int m_numID = node.toElement().attribute("value").toint();
}else if(node.nodeName() == "strName")
{
QString m_strName = node.toElement().attribute("value");
}else if(node.nodeName() == "MathScore")
{
double m_dMScore = node.toElement().attribute("value").toDouble();
}else if(node.nodeName() == "AvgScore")
{
float m_fAvgScore = node.toElement().attribute("value").toFloat();
}
}
file.close();
}
else
{
return false;
cout << "FAILED to Open Configuration File. " + file.errorString().toStdString() << endl;
}
return true;
}
浙公网安备 33010602011771号