X7ROOT File Manager
Current Path:
/opt/alt/libxml2/usr/share/doc/alt-libxml2-devel/examples
opt
/
alt
/
libxml2
/
usr
/
share
/
doc
/
alt-libxml2-devel
/
examples
/
??
..
??
.libs
??
.memdump
(1 B)
??
Makefile
(30.11 KB)
??
Makefile.am
(3.11 KB)
??
Makefile.in
(31.11 KB)
??
examples.xml
(31.66 KB)
??
examples.xsl
(4.51 KB)
??
index.html
(38.71 KB)
??
index.py
(8.95 KB)
??
io1
(7.71 KB)
??
io1.c
(3.67 KB)
??
io1.o
(30.64 KB)
??
io2
(7.71 KB)
??
io2.c
(1.17 KB)
??
io2.o
(22.04 KB)
??
parse1
(7.74 KB)
??
parse1.c
(1.27 KB)
??
parse1.o
(22.02 KB)
??
parse2
(7.74 KB)
??
parse2.c
(1.92 KB)
??
parse2.o
(43.21 KB)
??
parse3
(7.74 KB)
??
parse3.c
(1.47 KB)
??
parse3.o
(22.02 KB)
??
parse4
(7.74 KB)
??
parse4.c
(3.46 KB)
??
parse4.o
(47.55 KB)
??
reader1
(7.75 KB)
??
reader1.c
(2.47 KB)
??
reader1.o
(24.03 KB)
??
reader2
(7.75 KB)
??
reader2.c
(3.06 KB)
??
reader2.o
(25.97 KB)
??
reader3
(7.75 KB)
??
reader3.c
(2.88 KB)
??
reader3.o
(26.9 KB)
??
reader4
(7.75 KB)
??
reader4.c
(3.06 KB)
??
reader4.o
(29.63 KB)
??
test1.xml
(7 B)
??
test2.xml
(227 B)
??
test3.xml
(833 B)
??
testWriter
(7.79 KB)
??
testWriter.c
(37.6 KB)
??
testWriter.o
(105.34 KB)
??
tree1
(7.73 KB)
??
tree1.c
(2.19 KB)
??
tree1.o
(24.31 KB)
??
tree2
(7.73 KB)
??
tree2.c
(3.37 KB)
??
tree2.o
(29.45 KB)
??
xpath1
(7.74 KB)
??
xpath1.c
(6.47 KB)
??
xpath1.o
(58.59 KB)
??
xpath2
(7.74 KB)
??
xpath2.c
(5.21 KB)
??
xpath2.o
(40.76 KB)
Editing: reader2.c
/** * section: xmlReader * synopsis: Parse and validate an XML file with an xmlReader * purpose: Demonstrate the use of xmlReaderForFile() to parse an XML file * validating the content in the process and activating options * like entities substitution, and DTD attributes defaulting. * (Note that the XMLReader functions require libxml2 version later * than 2.6.) * usage: reader2 <valid_xml_filename> * test: reader2 test2.xml > reader1.tmp && diff reader1.tmp $(srcdir)/reader1.res * author: Daniel Veillard * copy: see Copyright for the status of this software. */ #include <stdio.h> #include <libxml/xmlreader.h> #ifdef LIBXML_READER_ENABLED /** * processNode: * @reader: the xmlReader * * Dump information about the current node */ static void processNode(xmlTextReaderPtr reader) { const xmlChar *name, *value; name = xmlTextReaderConstName(reader); if (name == NULL) name = BAD_CAST "--"; value = xmlTextReaderConstValue(reader); printf("%d %d %s %d %d", xmlTextReaderDepth(reader), xmlTextReaderNodeType(reader), name, xmlTextReaderIsEmptyElement(reader), xmlTextReaderHasValue(reader)); if (value == NULL) printf("\n"); else { if (xmlStrlen(value) > 40) printf(" %.40s...\n", value); else printf(" %s\n", value); } } /** * streamFile: * @filename: the file name to parse * * Parse, validate and print information about an XML file. */ static void streamFile(const char *filename) { xmlTextReaderPtr reader; int ret; /* * Pass some special parsing options to activate DTD attribute defaulting, * entities substitution and DTD validation */ reader = xmlReaderForFile(filename, NULL, XML_PARSE_DTDATTR | /* default DTD attributes */ XML_PARSE_NOENT | /* substitute entities */ XML_PARSE_DTDVALID); /* validate with the DTD */ if (reader != NULL) { ret = xmlTextReaderRead(reader); while (ret == 1) { processNode(reader); ret = xmlTextReaderRead(reader); } /* * Once the document has been fully parsed check the validation results */ if (xmlTextReaderIsValid(reader) != 1) { fprintf(stderr, "Document %s does not validate\n", filename); } xmlFreeTextReader(reader); if (ret != 0) { fprintf(stderr, "%s : failed to parse\n", filename); } } else { fprintf(stderr, "Unable to open %s\n", filename); } } int main(int argc, char **argv) { if (argc != 2) return(1); /* * this initialize the library and check potential ABI mismatches * between the version it was compiled for and the actual shared * library used. */ LIBXML_TEST_VERSION streamFile(argv[1]); /* * Cleanup function for the XML library. */ xmlCleanupParser(); /* * this is to debug memory for regression tests */ xmlMemoryDump(); return(0); } #else int main(void) { fprintf(stderr, "XInclude support not compiled in\n"); return(0); } #endif
Upload File
Create Folder