XML-Puffer

Ein XML-Puffer bietet effizienten Speicher im Arbeitsspeicher für beliebige XML-Daten.

Verwenden Sie zum Lesen von Daten aus einem XML-Puffer einen XML-Reader , und rufen Sie WsSetInputToBuffer mit dem XML-Puffer auf. Der Reader wird am Anfang des Dokuments positioniert.

Verwenden Sie zum Einfügen von Daten in einen Puffer einen XML-Writer , und rufen Sie WsSetOutputToBuffer mit dem XML-Puffer auf. Der Writer wird am Ende des Dokuments positioniert.

Nachdem ein Reader auf einen XML-Puffer festgelegt wurde, kann zusätzlich zu allen XML-Reader-APIs WsMoveReader verwendet werden, um durch den Reader durch das Dokument zu navigieren. WsGetReaderPosition und WsSetReaderPosition können auch verwendet werden, um eine Position im Dokument aufzuzeichnen und zu einem späteren Zeitpunkt zurückzukehren.

Nachdem ein Writer auf einen XML-Puffer festgelegt wurde, kann zusätzlich zu allen XML Writer-APIs WsMoveWriter verwendet werden, um mit dem Writer durch das Dokument zu navigieren. WsGetWriterPosition und WsSetWriterPosition können auch verwendet werden, um eine Position im Dokument aufzuzeichnen und zu einem späteren Zeitpunkt zurückzukehren. Der Writer fügt immer Daten vor dem Knoten ein, auf dem er positioniert ist.

Knoten können aus dem XML-Puffer gelöscht werden, indem die Position des Knotens mithilfe von WsGetReaderPosition oder WsGetWriterPosition abgerufen und dann WsRemoveNode mit dieser Position aufgerufen wird. Bei Elementen wird dadurch das Element gelöscht, einschließlich aller untergeordneten Elemente einschließlich des entsprechenden Endelements.

Eine Position wird durch den Wert WS_XML_NODE_POSITION dargestellt. Positionen sind spezifisch für einen bestimmten XML-Puffer und nur gültig, solange der XML-Puffer gültig ist.

Die folgenden Enumerationen werden mit XML-Puffern verwendet:

Die folgenden Funktionen werden mit XML-Puffern verwendet:

Das folgende Handle wird mit XML-Puffern verwendet:

Die folgenden Strukturen werden mit XML-Puffern verwendet: