本文整理汇总了C++中XmlNode::GetCount方法的典型用法代码示例。如果您正苦于以下问题:C++ XmlNode::GetCount方法的具体用法?C++ XmlNode::GetCount怎么用?C++ XmlNode::GetCount使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类XmlNode
的用法示例。
在下文中一共展示了XmlNode::GetCount方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: AsXML
String AsXML(const XmlNode& node, dword style)
{
StringBuffer r;
if(style & XML_HEADER)
r << XmlHeader();
if(style & XML_DOCTYPE)
for(int i = 0; i < node.GetCount(); i++) {
const XmlNode& m = node.Node(i);
if(m.GetType() == XML_TAG) {
r << XmlDocType(m.GetText());
break;
}
}
style &= ~(XML_HEADER|XML_DOCTYPE);
switch(node.GetType()) {
case XML_PI:
r << "<?" << node.GetText() << "?>\r\n";
break;
case XML_DECL:
r << "<!" << node.GetText() << ">\r\n";
break;
case XML_COMMENT:
r << "<!--" << node.GetText() << "-->\r\n";
break;
case XML_DOC:
for(int i = 0; i < node.GetCount(); i++)
r << AsXML(node.Node(i), style);
break;
case XML_TEXT:
r << DeXml(node.GetText());
break;
case XML_TAG:
XmlTag tag(node.GetText());
for(int i = 0; i < node.GetAttrCount(); i++)
tag(node.AttrId(i), node.Attr(i));
if(node.GetCount()) {
StringBuffer body;
for(int i = 0; i < node.GetCount(); i++)
body << AsXML(node.Node(i), style);
r << tag(~body);
}
else
r << tag();
}
return r;
}
示例2: Scan
void Scan(const XmlNode& n, bool nano)
{
for(int i = 0; i < n.GetCount(); i++) {
total_len += n.GetText().GetCount();
if(nano)
ws.Add(ns.Add(n.GetText()));
else
ss.Add(n.GetText());
if(n[i].IsTag()) {
Scan(n[i], nano);
}
}
}
示例3: MakeMap
void MakeMap(VectorMap<String, int>& map, const XmlNode& n, const String& path, int& tag_count, int& other_count)
{
if(map.GetCount() > 1000)
return;
for(int i = 0; i < n.GetCount(); i++) {
const Tuple2<int, String> *m = FindTuple(mm, __countof(mm), n[i].GetType());
if(m) {
count.GetAdd(m->b, 0)++;
count.GetAdd(String(m->b) + ".len", 0) += n[i].GetText().GetCount();
}
if(n[i].IsTag()) {
String np = path + "/" + n[i].GetTag();
map.GetAdd(np, 0)++;
MakeMap(map, n[i], np, tag_count, other_count);
count.GetAdd("attr", 0) += n[i].GetAttrCount();
}
else
map.GetAdd(path + ':' + (m ? m->b : "?"), 0)++;
}
}