本文整理汇总了C++中XmlWriter::close方法的典型用法代码示例。如果您正苦于以下问题:C++ XmlWriter::close方法的具体用法?C++ XmlWriter::close怎么用?C++ XmlWriter::close使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类XmlWriter
的用法示例。
在下文中一共展示了XmlWriter::close方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: save
//.........这里部分代码省略.........
out.printIndent(ind);
out.startElement(tags::get_TRANSFER(),trsfAttr,sizeof(trsfAttr)/sizeof(trsfAttr[0]));out.printNewLine();
{
ind++;
out.printIndent(ind);
XStr version("2.2");
XmlWrtAttr headAttr[]={
XmlWrtAttr(ustrings::get_VERSION(),version.unicodeForm())
,XmlWrtAttr(ustrings::get_SENDER(),getHeadSecSender())
};
out.startElement(tags::get_HEADERSECTION(),headAttr,sizeof(headAttr)/sizeof(headAttr[0]));out.printNewLine();
{
ind++;
out.printIndent(ind);
out.startElement(tags::get_ALIAS(),0,0);out.printNewLine();
{
ind++;
ind--;
}
out.printIndent(ind);
out.endElement(/*ALIAS*/);out.printNewLine();
out.printIndent(ind);
out.startElement(tags::get_COMMENT(),0,0);
out.characters(getHeadSecComment());
out.endElement(/*COMMENT*/);out.printNewLine();
ind--;
}
out.printIndent(ind);
out.endElement(/*HEADERSECTION*/);out.printNewLine();
ind--;
}
// write DATASECTION
{
ind++;
out.printIndent(ind);
out.startElement(tags::get_DATASECTION(),0,0);out.printNewLine();
{
ind++;
// write all baskets
for(std::vector<IomBasket>::size_type basketi=0;basketi<basketv.size();basketi++){
IomBasket basket=basketv.at(basketi);
const XMLCh *topics=basket->getTopics();
const XMLCh *kind=encodeBasketKind(basket->getKind());
const XMLCh *startstate=basket->getKind()!=IOM_FULL ? basket->getStartState() : 0;
const XMLCh *endstate=basket->getKind()!=IOM_FULL ? basket->getEndState() : 0;
const XMLCh *consistency=encodeConsistency(basket->getConsistency());
XmlWrtAttr basketAttr[]={
XmlWrtAttr(ustrings::get_BID(),basket->getOid(),true)
,XmlWrtAttr(topics ? ustrings::get_TOPICS():0,topics)
,XmlWrtAttr(kind ? ustrings::get_KIND():0 ,kind)
,XmlWrtAttr(startstate ? ustrings::get_STARTSTATE():0,startstate)
,XmlWrtAttr(endstate ? ustrings::get_ENDSTATE():0,endstate)
,XmlWrtAttr(consistency ? ustrings::get_CONSISTENCY():0,consistency)
};
out.printIndent(ind);
if(basket->getTag()==0){
iom_issueerr("basket requires a TOPIC name");
return IOM_ERR_ILLEGALSTATE;
}
out.startElement(basket->getTag(),basketAttr,sizeof(basketAttr)/sizeof(basketAttr[0]));out.printNewLine();
{
ind++;
// write all objects
IomIterator obji=new iom_iterator(basket);
IomObject obj=obji->next_object();
while(!obj.isNull()){
out.printIndent(ind);
const XMLCh *bid=obj->getBid();
const XMLCh *ops=encodeOperation(obj->getOperation());
const XMLCh *consistency=encodeConsistency(basket->getConsistency());
XmlWrtAttr objAttr[]={
XmlWrtAttr(ustrings::get_TID(),obj->getOid(),true)
,XmlWrtAttr(bid ? ustrings::get_BID():0,bid,true)
,XmlWrtAttr(ops ? ustrings::get_OPERATION():0 ,ops)
,XmlWrtAttr(consistency ? ustrings::get_CONSISTENCY():0,consistency)
};
out.startElement(obj->getTag(),objAttr,sizeof(objAttr)/sizeof(objAttr[0]));
writeAttrs(out,obj);
out.endElement(/*object*/);out.printNewLine();
obj=obji->next_object();
}
ind--;
}
out.printIndent(ind);
out.endElement(/*basket*/);out.printNewLine();
}
ind--;
}
out.printIndent(ind);
out.endElement(/*DATASECTION*/);out.printNewLine();
ind--;
}
out.printIndent(ind);
out.endElement(/*TRANSFER*/);out.printNewLine();
// close file
out.close();
return 0;
}