2009-03-11 15 views
1

Die letzte Zeile löst eine Ausnahme aus, da das Stammelement fehlt, da es sich am Ende des Streams befindet.
_pos Wert zeigt, dass es alle Zeichen gelesen hat, wenn ich es vorher der Eigenschaft in Zeile 2 zugewiesen habe.
Kann jemand einen StringReader zurücksetzen?Position von StringReader zurücksetzen

+0

Wow, das ist schwer zu verstehen. Hast du eine Frage? Wenn ja, verbergen Sie es bitte nicht als Kommentar im Code. –

+0

+1 für -1. Verwenden Sie XmlTextReader außer für spezielle Zwecke nicht außerdem. Dies ist keiner von ihnen. Setzen Sie Ihren Reader auch keinen Anrufern aus. Kommentieren Sie die Zeile "Reader =" und ich wette, der Code funktioniert. –

+0

Ich muss XmlTextReader verwenden und möchte diese Zeile nicht auskommentieren. Was ich brauche, ist eine Möglichkeit, die StringReader – chugh97

Antwort

3

Im Wesentlichen nicht. Erstellen Sie einfach eine neue ... "Leser" sind in der Regel nur in einer Richtung. In gewisser Weise ist es verwirrend, eine einstellbare "Reader" -Eigenschaft zu haben, die verbraucht. Vielleicht haben Sie stattdessen eine Read(...) oder Load(...) Methode? Es wäre offensichtlich, dass es dann Nebenwirkungen hat ...

+0

Danke, das hat mir wirklich geholfen! – chugh97

0

Als bewährte Methode sollten Sie die statische XmlReader.Create() -Methode verwenden, die das Factory-Muster anstelle des Konstruktors "new XmlTextReader (...) verwendet". "

Verwandte Themen