summaryrefslogtreecommitdiff
path: root/doc/examples/io2.c
diff options
context:
space:
mode:
authorIgor Pashev <pashev.igor@gmail.com>2015-10-19 15:37:26 +0300
committerIgor Pashev <pashev.igor@gmail.com>2015-10-19 15:37:26 +0300
commit6c6e567eb34ad0f5a3bd90f6585c521543106401 (patch)
tree7f8dc62f12dd2b720ffdc738d393cd1a8f82921c /doc/examples/io2.c
parent7421ae696c1ef2fb48adc73ba8564ef2f276d618 (diff)
parent218d404f34d79a8837f9c0230dd9d9f1180b4068 (diff)
downloadlibxml2-pristine-tar.tar.gz
Merge branch 'pristine-tar' of git://anonscm.debian.org/debian-xml-sgml/libxml2 into pristine-tarpristine-tar
Diffstat (limited to 'doc/examples/io2.c')
-rw-r--r--doc/examples/io2.c58
1 files changed, 58 insertions, 0 deletions
diff --git a/doc/examples/io2.c b/doc/examples/io2.c
new file mode 100644
index 0000000..4676f4a
--- /dev/null
+++ b/doc/examples/io2.c
@@ -0,0 +1,58 @@
+/**
+ * section: InputOutput
+ * synopsis: Output to char buffer
+ * purpose: Demonstrate the use of xmlDocDumpMemory
+ * to output document to a character buffer
+ * usage: io2
+ * test: io2 > io2.tmp && diff io2.tmp $(srcdir)/io2.res
+ * author: John Fleck
+ * copy: see Copyright for the status of this software.
+ */
+
+#include <libxml/parser.h>
+
+#if defined(LIBXML_TREE_ENABLED) && defined(LIBXML_OUTPUT_ENABLED)
+int
+main(void)
+{
+
+ xmlNodePtr n;
+ xmlDocPtr doc;
+ xmlChar *xmlbuff;
+ int buffersize;
+
+ /*
+ * Create the document.
+ */
+ doc = xmlNewDoc(BAD_CAST "1.0");
+ n = xmlNewNode(NULL, BAD_CAST "root");
+ xmlNodeSetContent(n, BAD_CAST "content");
+ xmlDocSetRootElement(doc, n);
+
+ /*
+ * Dump the document to a buffer and print it
+ * for demonstration purposes.
+ */
+ xmlDocDumpFormatMemory(doc, &xmlbuff, &buffersize, 1);
+ printf("%s", (char *) xmlbuff);
+
+ /*
+ * Free associated memory.
+ */
+ xmlFree(xmlbuff);
+ xmlFreeDoc(doc);
+
+ return (0);
+
+}
+#else
+#include <stdio.h>
+
+int
+main(void)
+{
+ fprintf(stderr,
+ "library not configured with tree and output support\n");
+ return (1);
+}
+#endif