X7ROOT File Manager
Current Path:
/opt/alt/libxml2/usr/share/doc/alt-libxml2-devel/tutorial
opt
/
alt
/
libxml2
/
usr
/
share
/
doc
/
alt-libxml2-devel
/
tutorial
/
??
..
??
apa.html
(2.06 KB)
??
apb.html
(1.98 KB)
??
apc.html
(3.02 KB)
??
apd.html
(3.16 KB)
??
ape.html
(3.02 KB)
??
apf.html
(2.88 KB)
??
apg.html
(2.95 KB)
??
aph.html
(3.52 KB)
??
api.html
(1.85 KB)
??
ar01s02.html
(3.42 KB)
??
ar01s03.html
(5.58 KB)
??
ar01s04.html
(6.14 KB)
??
ar01s05.html
(7.28 KB)
??
ar01s06.html
(3.79 KB)
??
ar01s07.html
(3.8 KB)
??
ar01s08.html
(3.83 KB)
??
ar01s09.html
(7.42 KB)
??
images
??
includeaddattribute.c
(1.11 KB)
??
includeaddkeyword.c
(1.29 KB)
??
includeconvert.c
(1.77 KB)
??
includegetattribute.c
(1.14 KB)
??
includekeyword.c
(1.32 KB)
??
includexpath.c
(1.46 KB)
??
index.html
(5.83 KB)
??
ix01.html
(2.49 KB)
Editing: includexpath.c
<![CDATA[ #include <libxml/parser.h> #include <libxml/xpath.h> xmlDocPtr getdoc (char *docname) { xmlDocPtr doc; doc = xmlParseFile(docname); if (doc == NULL ) { fprintf(stderr,"Document not parsed successfully. \n"); return NULL; } return doc; } xmlXPathObjectPtr getnodeset (xmlDocPtr doc, xmlChar *xpath){ xmlXPathContextPtr context; xmlXPathObjectPtr result; context = xmlXPathNewContext(doc); if (context == NULL) { printf("Error in xmlXPathNewContext\n"); return NULL; } result = xmlXPathEvalExpression(xpath, context); xmlXPathFreeContext(context); if (result == NULL) { printf("Error in xmlXPathEvalExpression\n"); return NULL; } if(xmlXPathNodeSetIsEmpty(result->nodesetval)){ xmlXPathFreeObject(result); printf("No result\n"); return NULL; } return result; } int main(int argc, char **argv) { char *docname; xmlDocPtr doc; xmlChar *xpath = (xmlChar*) "//keyword"; xmlNodeSetPtr nodeset; xmlXPathObjectPtr result; int i; xmlChar *keyword; if (argc <= 1) { printf("Usage: %s docname\n", argv[0]); return(0); } docname = argv[1]; doc = getdoc(docname); result = getnodeset (doc, xpath); if (result) { nodeset = result->nodesetval; for (i=0; i < nodeset->nodeNr; i++) { keyword = xmlNodeListGetString(doc, nodeset->nodeTab[i]->xmlChildrenNode, 1); printf("keyword: %s\n", keyword); xmlFree(keyword); } xmlXPathFreeObject (result); } xmlFreeDoc(doc); xmlCleanupParser(); return (1); } ]]>
Upload File
Create Folder