Partager via


Mémoire tampon XML

Une mémoire tampon XML fournit un stockage en mémoire efficace pour les données XML arbitraires.

Pour lire les données d’une mémoire tampon XML, utilisez un lecteur XML et appelez WsSetInputToBuffer avec la mémoire tampon XML. Le lecteur sera positionné au début du document.

Pour insérer des données dans une mémoire tampon, utilisez un enregistreur XML et appelez WsSetOutputToBuffer avec la mémoire tampon XML. L’enregistreur sera positionné à la fin du document.

Une fois qu’un lecteur a été défini sur une mémoire tampon XML, en plus de toutes les API de lecteur XML, WsMoveReader peut être utilisé pour parcourir le lecteur dans le document. WsGetReaderPosition et WsSetReaderPosition peuvent également être utilisés pour enregistrer une position dans le document et y revenir ultérieurement.

Une fois qu’un enregistreur a été défini sur une mémoire tampon XML, en plus de toutes les API d’enregistreur XML, WsMoveWriter peut être utilisé pour parcourir l’enregistreur dans le document. WsGetWriterPosition et WsSetWriterPosition peuvent également être utilisés pour enregistrer une position dans le document et y revenir ultérieurement. L’enregistreur insère toujours des données avant le nœud sur lequel il est positionné.

Les nœuds peuvent être supprimés de la mémoire tampon XML en obtenant la position du nœud à l’aide de WsGetReaderPosition ou WsGetWriterPosition , puis en appelant WsRemoveNode avec cette position. Pour les éléments, cela supprime l’élément, tous ses enfants, y compris son élément de fin correspondant.

Une position est représentée par la valeur WS_XML_NODE_POSITION. Les positions sont spécifiques à une mémoire tampon XML particulière et sont valides uniquement tant que la mémoire tampon XML est valide.

Les énumérations suivantes sont utilisées avec des mémoires tampons XML :

Les fonctions suivantes sont utilisées avec des mémoires tampons XML :

Le handle suivant est utilisé avec les mémoires tampons XML :

Les structures suivantes sont utilisées avec des mémoires tampons XML :