aboutsummaryrefslogtreecommitdiff
path: root/libxml2-2.9.10/doc/examples/parse1.c
diff options
context:
space:
mode:
Diffstat (limited to 'libxml2-2.9.10/doc/examples/parse1.c')
-rw-r--r--libxml2-2.9.10/doc/examples/parse1.c56
1 files changed, 56 insertions, 0 deletions
diff --git a/libxml2-2.9.10/doc/examples/parse1.c b/libxml2-2.9.10/doc/examples/parse1.c
new file mode 100644
index 0000000..e3c9d3a
--- /dev/null
+++ b/libxml2-2.9.10/doc/examples/parse1.c
@@ -0,0 +1,56 @@
+/**
+ * section: Parsing
+ * synopsis: Parse an XML file to a tree and free it
+ * purpose: Demonstrate the use of xmlReadFile() to read an XML file
+ * into a tree and xmlFreeDoc() to free the resulting tree
+ * usage: parse1 test1.xml
+ * test: parse1 test1.xml
+ * author: Daniel Veillard
+ * copy: see Copyright for the status of this software.
+ */
+
+#include <stdio.h>
+#include <libxml/parser.h>
+#include <libxml/tree.h>
+
+/**
+ * example1Func:
+ * @filename: a filename or an URL
+ *
+ * Parse the resource and free the resulting tree
+ */
+static void
+example1Func(const char *filename) {
+ xmlDocPtr doc; /* the resulting document tree */
+
+ doc = xmlReadFile(filename, NULL, 0);
+ if (doc == NULL) {
+ fprintf(stderr, "Failed to parse %s\n", filename);
+ return;
+ }
+ xmlFreeDoc(doc);
+}
+
+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
+
+ example1Func(argv[1]);
+
+ /*
+ * Cleanup function for the XML library.
+ */
+ xmlCleanupParser();
+ /*
+ * this is to debug memory for regression tests
+ */
+ xmlMemoryDump();
+ return(0);
+}