|
|
|
|
|
libxml2 Reference Manual |
|---|
xmlsave - the XML document serializer
API to save document or subtree of document
Author(s): Daniel Veillard
typedef enum xmlSaveOption; typedef struct _xmlSaveCtxt xmlSaveCtxt; typedef xmlSaveCtxt * xmlSaveCtxtPtr; xmlSaveCtxtPtr xmlSaveToIO (xmlOutputWriteCallback iowrite,
xmlOutputCloseCallback ioclose,
void * ioctx,
const char * encoding,
int options); xmlSaveCtxtPtr xmlSaveToFd (int fd,
const char * encoding,
int options); int xmlSaveClose (xmlSaveCtxtPtr ctxt); int xmlSaveSetAttrEscape (xmlSaveCtxtPtr ctxt,
xmlCharEncodingOutputFunc escape); xmlSaveCtxtPtr xmlSaveToBuffer (xmlBufferPtr buffer,
const char * encoding,
int options); xmlSaveCtxtPtr xmlSaveToFilename (const char * filename,
const char * encoding,
int options); int xmlSaveFlush (xmlSaveCtxtPtr ctxt); long xmlSaveDoc (xmlSaveCtxtPtr ctxt,
xmlDocPtr doc); int xmlSaveSetEscape (xmlSaveCtxtPtr ctxt,
xmlCharEncodingOutputFunc escape); long xmlSaveTree (xmlSaveCtxtPtr ctxt,
xmlNodePtr node);
struct _xmlSaveCtxt {
The content of this structure is not made public by the API.
} xmlSaveCtxt;
xmlSaveCtxt * xmlSaveCtxtPtr;
enum xmlSaveOption { XML_SAVE_FORMAT = 1 /* format save output */ XML_SAVE_NO_DECL = 2 /* drop the xml declaration */ XML_SAVE_NO_EMPTY = 4 /* no empty tags */ XML_SAVE_NO_XHTML = 8 /* disable XHTML1 specific rules */ };
int xmlSaveClose (xmlSaveCtxtPtr ctxt)
Close a document saving context, i.e. make sure that all bytes have been output and free the associated data.
| ctxt: | a document saving context |
| Returns: | the number of byte written or -1 in case of error. |
long xmlSaveDoc (xmlSaveCtxtPtr ctxt,
xmlDocPtr doc)
Save a full document to a saving context TODO: The function is not fully implemented yet as it does not return the byte count but 0 instead
| ctxt: | a document saving context |
| doc: | a document |
| Returns: | the number of byte written or -1 in case of error |
int xmlSaveFlush (xmlSaveCtxtPtr ctxt)
Flush a document saving context, i.e. make sure that all bytes have been output.
| ctxt: | a document saving context |
| Returns: | the number of byte written or -1 in case of error. |
int xmlSaveSetAttrEscape (xmlSaveCtxtPtr ctxt,
xmlCharEncodingOutputFunc escape)
Set a custom escaping function to be used for text in attribute content
| ctxt: | a document saving context |
| escape: | the escaping function |
| Returns: | 0 if successful or -1 in case of error. |
int xmlSaveSetEscape (xmlSaveCtxtPtr ctxt,
xmlCharEncodingOutputFunc escape)
Set a custom escaping function to be used for text in element content
| ctxt: | a document saving context |
| escape: | the escaping function |
| Returns: | 0 if successful or -1 in case of error. |
xmlSaveCtxtPtr xmlSaveToBuffer (xmlBufferPtr buffer,
const char * encoding,
int options)
Create a document saving context serializing to a buffer with the encoding and the options given
| buffer: | a buffer |
| encoding: | the encoding name to use or NULL |
| options: | a set of xmlSaveOptions |
| Returns: | a new serialization context or NULL in case of error. |
xmlSaveCtxtPtr xmlSaveToFd (int fd,
const char * encoding,
int options)
Create a document saving context serializing to a file descriptor with the encoding and the options given.
| fd: | a file descriptor number |
| encoding: | the encoding name to use or NULL |
| options: | a set of xmlSaveOptions |
| Returns: | a new serialization context or NULL in case of error. |
xmlSaveCtxtPtr xmlSaveToFilename (const char * filename,
const char * encoding,
int options)
Create a document saving context serializing to a filename or possibly to an URL (but this is less reliable) with the encoding and the options given.
| filename: | a file name or an URL |
| encoding: | the encoding name to use or NULL |
| options: | a set of xmlSaveOptions |
| Returns: | a new serialization context or NULL in case of error. |
xmlSaveCtxtPtr xmlSaveToIO (xmlOutputWriteCallback iowrite,
xmlOutputCloseCallback ioclose,
void * ioctx,
const char * encoding,
int options)
Create a document saving context serializing to a file descriptor with the encoding and the options given
| iowrite: | an I/O write function |
| ioclose: | an I/O close function |
| ioctx: | an I/O handler |
| encoding: | the encoding name to use or NULL |
| options: | a set of xmlSaveOptions |
| Returns: | a new serialization context or NULL in case of error. |
long xmlSaveTree (xmlSaveCtxtPtr ctxt,
xmlNodePtr node)
Save a subtree starting at the node parameter to a saving context TODO: The function is not fully implemented yet as it does not return the byte count but 0 instead
| ctxt: | a document saving context |
| node: | the top node of the subtree to save |
| Returns: | the number of byte written or -1 in case of error |