CMarkup与tinyXml直接解析XML字符串
今天才知道CMarkup可以直接解析字符串形式的XML。以前都是先存入一个文件,然后从文件中load。多做了I/O操作,效率不高。
CMarkup xml;
CString str;
xml.SetDoc(str);
tinyXml也可以直接解析XML字符串,方式如下:
// directly parsing string with tinyxml
const char* content = "<root><elem name=\"aaa\"/></root>";
TiXmlDocument *doc = new TiXmlDocument();
doc->Parse(content);
if (&doc == NULL)
cout << "doc == NULL" << endl;
TiXmlHandle docHandle(doc);
TiXmlNode * root = docHandle.FirstChild("root").ToElement();
TiXmlNode * elemNode = root->FirstChild( "elem" );
TiXmlElement * elemElem = elemNode->ToElement();
cout << elemElem->Attribute("name");
结果是aaa
相关文档:
HTML.html文件
<div align="center" class="style1">
<p>冰棍列表</p>
<p></p>
<table width="400" border="1">
<tr>
<th scope="col"><font size="4">品牌</font></th> ......
test.html
———————————————————————————————————————& ......
xml文件:
<?xml version="1.0" encoding="UTF-8"?>
<mobile-list>
<mobile type="Nokia2652">
<wap2>false</wap2>
<width>115</width>
</mobile>
<mobile type="Nokia2650">
......
数据通常是以 XML 格式提供给 Web 应用程序的。但是,XML 数据本质上是分层的,因此您可能希望能够在基于列表的控件中使用 XML 数据,如 GridView 或 DropDownList 控件。此演练演示如何将 XML 数据视为表格数据库表中的数据进行处理。
通过此演练,您将学会如何执行以下任务:
·使用数据源控件读取 XM ......
同步程序案例
procedure TGetOrderThread.PostDB(webnr:WideString);
var
Err: String;
SetWebnr:WideString;
xmlDoc: IXMLDocument;
root: IXMLNode;
rowc: IXMLNode;//记录数
rows: IXMLNodeList;//主记录列表
row: IXMLNode;
drows: IXMLNodeList;// ......