场景:
1.需要生成xhtml文件.比如生成浏览器可预览的表格.
TEST(test_xml_writer,testWriteXhtml) { //定义文档和节点指针 xmlDocPtr doc = xmlNewDoc(BAD_CAST"1.0"); xmlNodePtr root_node = xmlNewNode(NULL,BAD_CAST"html"); //设置根节点 xmlDocSetRootElement(doc,root_node); xmlNewProp(root_node,BAD_CAST"xmlns",BAD_CAST "http://www.w3.org/1999/xhtml"); xmlNodePtr head_ptr = xmlNewTextChild(root_node,NULL,BAD_CAST "head",NULL); xmlNodePtr title_ptr = xmlNewTextChild(head_ptr,NULL,BAD_CAST "title",NULL); xmlNodePtr link_ptr = xmlNewTextChild(head_ptr,NULL,BAD_CAST "link",NULL); xmlNewProp(link_ptr,BAD_CAST"res",BAD_CAST "stylesheet"); xmlNewProp(link_ptr,BAD_CAST"href",BAD_CAST ""); xmlNewProp(link_ptr,BAD_CAST"type",BAD_CAST "text/css"); xmlSetProp(link_ptr,BAD_CAST"href",BAD_CAST "../1.css"); xmlNodePtr body_ptr = xmlNewTextChild(root_node,NULL,BAD_CAST "body",NULL); xmlNodePtr p = xmlNewTextChild(body_ptr, NULL, BAD_CAST "p", BAD_CAST "newNode1 content"); xmlNodeSetContent(p,BAD_CAST "infoworld"); //存储xml文档 int nRel = xmlSaveFormatFileEnc("dist/word.xhtml",doc,"UTF-8",1); assert(nRel!=-1); xmlFreeDoc(doc); }
<?xml version="1.0" encoding="UTF-8"?> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title/> <link res="stylesheet" href="../1.css" type="text/css"/> </head> <body> <p>infoworld</p> </body> </html>