关于使用方法,请看文档。
http://www.cnblogs.com/shenlian/archive/2012/12/10/2811931.html
针对于Html的解析,请看文档。
http://blog.csdn.net/youfangyuan/article/details/7816518
已经讲解的很详细的,我就不再撰述。
接下来要将就是针对这个里面对html文档的编辑和修改,修改完后重新生成html。
1.添加节点实例
//使用解析器写入Html文档
HTML::ParserDom parser ;
tree<HTML::Node> dom = parser.parseTree(html);
for(tree<HTML::Node>::iterator it=dom.begin();it!=dom.end();++it)
{
if("tbody"==it->tagName())// && "goaler"==it->attribute("id").second
{
HTML::Node tdNode;
tdNode.text("<td>1111");
tdNode.closingText("</td>");
dom.append_child(it,tdNode);
}
}
2.重新生成,实例
void printDomTree(tree<HTML::Node> htmlTree,string &htmlFileBuffer)
{
tree<HTML::Node>::iterator it = htmlTree.begin();
tree<HTML::Node>::sibling_iterator sibIt = htmlTree.begin(it);
while (sibIt != htmlTree.end(it))
{
htmlFileBuffer.append(sibIt->text());
printDomTree(sibIt,htmlFileBuffer);
htmlFileBuffer.append(sibIt->closingText());
++sibIt;
}
}
更新内容
在源代码上修改添加了生成html的函数。
std::string generateHtml();
项目源码