mirror of
https://gitlab.gnome.org/GNOME/libxml2.git
synced 2024-12-24 21:33:51 +03:00
b0fc67aa22
This option would allow for a smaller, but mostly useless minimal build. But it complicates the symbol availability logic in an insane way and requires specialized tools like our custom C parser in doc/apibuild.py. See #717.
59 lines
1.1 KiB
C
59 lines
1.1 KiB
C
/**
|
|
* 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_OUTPUT_ENABLED)
|
|
int
|
|
main(void)
|
|
{
|
|
|
|
xmlNodePtr n;
|
|
xmlDocPtr doc;
|
|
xmlChar *xmlbuff;
|
|
int buffersize;
|
|
|
|
/*
|
|
* Create the document.
|
|
*/
|
|
doc = xmlNewDoc(BAD_CAST "1.0");
|
|
n = xmlNewDocNode(doc, NULL, BAD_CAST "root", NULL);
|
|
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 output support\n");
|
|
return (0);
|
|
}
|
|
#endif
|