2012-12-22 24 views
6

Ich habe ein XMLReader Objekt aus einem Stream Objekt, das ich früher von XMLWriter Objekt geschrieben wurde erstellt.Ist es möglich, die aktuelle XMLReader-Position für die spätere Verwendung zu speichern?

Ich weiß, XMLReader Objekt ist nur vorwärts und daher möchte ich in der Lage sein, aktuelle Leseposition zu speichern, so dass ich in der Lage sein werde weiterlesen nur von dem Ort, an dem ich aufgehört habe zu lesen.

Ist es möglich?
Ich weiß, es ist vielleicht knifflig, wie XMLreader Blöcke von Speicherblöcken gelesen, so wird es möglicherweise ein Problem sein, aktuelle XML-Element Lesepunkt wiederherzustellen.

Bitte nur beraten, wenn Sie sicher wissen, wird es aus Ihrer Erfahrung mit diesem Problem umgehen speziell.

Hinweis:
1. Ich dachte einfach für dieses Szenario den gesamten XMLReader Objektverweis zu speichern.
2. XMLReader Position = aktueller Zeiger auf Leseelement nicht Stream.Position wie es etwas anderes ist.

+0

Haben Sie versucht, die 'Stream.Position' Eigenschaft festlegen, bevor Sie die' XMLReader' mit? Das sollte funktionieren. –

+0

Ja ich tat, Stream hat eine Art seltsame Position, die anscheinend nicht zu spezifischen Lesepunkt Element in Xml – JavaSa

+0

zurück übersetzt werden kann Richtig, aber wenn Sie die 'Stream.Position' und setzen Sie es wieder auf die gleiche Position, bevor Sie es geben zu einem neuen 'XMLReader' sollte es von der gleichen Stelle aufgenommen werden. –

Antwort

Verwandte Themen