本文整理汇总了C++中QXmlStreamAttributes::end方法的典型用法代码示例。如果您正苦于以下问题:C++ QXmlStreamAttributes::end方法的具体用法?C++ QXmlStreamAttributes::end怎么用?C++ QXmlStreamAttributes::end使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类QXmlStreamAttributes
的用法示例。
在下文中一共展示了QXmlStreamAttributes::end方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: if
void PriceList::loadFromXml10(const QXmlStreamAttributes &attrs ) {
for( QXmlStreamAttributes::const_iterator attrIter = attrs.begin(); attrIter != attrs.end(); ++attrIter ){
QString nameUp = attrIter->name().toString().toUpper();
if( nameUp == "ID" ){
m_d->id = attrIter->value().toString().toUInt();
} else if( nameUp == "NAME" ){
setName( attrIter->value().toString() );
} else if( nameUp == "DESCRIPTION" ){
setDescription( attrIter->value().toString() );
}
}
}
示例2: initCdr
int Dialog::initCdr(VCCdrDefines *pvcCdrDefines, QString fileName)
{
LOG_FUNC(Dialog::initCdr);
//初始化返回参数
pvcCdrDefines->clear();
CCdrBaseInfo BaseInfo;
//打开xml配置文件
QFile file;
//QMessageBox mb;
//mb.setText(QDir::currentPath() + "/cdrcomfig.xml");
//mb.exec();
file.setFileName(fileName);
if(!file.open(QIODevice::ReadOnly))
{
file.setFileName(XML_LOCATION);
if(!file.open(QIODevice::ReadOnly))
{
return FAIL;
}
}
//创建一个新的节点用来处理
QXmlStreamReader xmlReader(&file);
CCdrDefine* cCdeDefine = 0;
VCAttributes vcAttributes;
for(QXmlStreamReader::TokenType type = xmlReader.readNext();!xmlReader.atEnd(); type = xmlReader.readNext())
{
switch(type)
{
//开始节点
case QXmlStreamReader::StartElement:
#ifdef DEBUG
qDebug()<<"\t\t\ttype = QXmlStreamReader::StartElement; name = "<<xmlReader.name();
#endif
//cdr表示一张话单的开始
if(!xmlReader.name().compare("cdr"))
//todo 这里处理一个话单开始的工作,比如创建一个新的对象
{
#ifdef DEBUG
qDebug()<<"new cdr"<<xmlReader.name();
#endif
cCdeDefine = new CCdrDefine;
QXmlStreamAttributes qStreamAttr = xmlReader.attributes();
//遍历所有的属性,插入可以使用的属性
for(QXmlStreamAttributes::iterator iter = qStreamAttr.begin();iter != qStreamAttr.end();iter++)
{
if(BaseInfo.checkTypeAttr(BaseInfo.cdr(),iter->name().toString()))
{
cCdeDefine->vcCdrAttr.addOne(iter->name().toString(),iter->value().toString());
}
}
}
else if(!xmlReader.name().compare("filename"))
//如果这里是filename,就应该创建一个节点,用来存储相关的信息;
;
else if(!xmlReader.name().compare("element"))
//如果是element,表示是字段了.
;
else if(!xmlReader.name().compare("name") && cCdeDefine != 0)
{
//清空上次使用的attributes
vcAttributes.clear();
QXmlStreamAttributes qStreamAttr = xmlReader.attributes();
//在第一个位置添加这个节点的值
vcAttributes.addOne(xmlReader.name().toString(),xmlReader.readElementText());
//遍历所有的属性,插入可以使用的属性
for(QXmlStreamAttributes::iterator iter = qStreamAttr.begin();iter != qStreamAttr.end();iter++)
{
if(BaseInfo.checkTypeAttr(BaseInfo.fileName(),iter->name().toString()))
{
vcAttributes.addOne(iter->name().toString(),iter->value().toString());
}
}
#ifdef DEBUG
qDebug()<<"\tinsert into NameDef, name = "<<xmlReader.name();
#endif
//插入到链表中去
cCdeDefine->addNameDef(vcAttributes);
}
else if(!xmlReader.name().compare("field"))
{
//清空上次使用的attributes
vcAttributes.clear();
QXmlStreamAttributes qStreamAttr = xmlReader.attributes();
#ifdef DEBUG
qDebug()<<"\txmlReader.attributes()="<<qStreamAttr.size();
#endif
//.........这里部分代码省略.........