
Методы ReadString и ReadCharts считывают текстовые данные из элемента. ReadString возвращает строковый объект, содержащий данные, в то время как ReadCharts считывает данные в заданный массив символов.
Метод ReadElementString аналогичен методу ReadString, за исключением того, что при желании можно передать в него имена элемента. Если следующий узел содержимого не является начальным тегом или, если параметр Name не совпадает с именем (Name) текущего узла, то порождается исключение. Вот пример того, как это может использоваться (код можно найти в папке XmlReaderSample2):
protected void button1_Click(object sender, System.EventArgs e) {
// Использовать файловый поток для получения данных
FileStream fs = new FileStream("..\\..\\..\\books.xml", FileMode.Open);
XmlTextReader tr = new XmlTextReader(fs);
while(!tr.EOF) {
// если встретился тип элемента, проверить и загрузить его в окно списка
if (tr.MoveToContent()==XmlNodeType.Element && tr.Name=="title") {
listBox1.Items.Add(tr.ReadElementString());
} else
//иначе двигаться дальше
tr.Read();
}
}
В цикле while используется метод MoveToContent для поиска каждого узла типа XmlNodeType.Element с именем title. Если это условие не выполняется, то предложение else вызывает метод Read для перехода к следующему узлу.
