У меня есть файл XML, который я пытаюсь прочитать из здесь, и у меня есть следующий код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml;
using System.IO;
namespace XML
{
class Program
{
static void Main(string[] args)
{
XmlTextReader textReader = new XmlTextReader("secLendingXML.cfm.xml");
while (textReader.Read())
{
switch (textReader.NodeType)
{
case XmlNodeType.Element:
Console.WriteLine(textReader.Name);
Console.WriteLine(textReader.Value);
break;
case XmlNodeType.Text:
Console.WriteLine(textReader.Value);
break;
case XmlNodeType.XmlDeclaration:
case XmlNodeType.ProcessingInstruction:
Console.WriteLine(textReader.Name + " " + textReader.Value);
break;
case XmlNodeType.Comment:
Console.WriteLine(textReader.Value);
break;
case XmlNodeType.EndElement:
break;
}
}
Console.ReadLine();
}
}
}
Код работает правильно в том смысле, что он читает узлы и возвращение имен. Но проблема в том, что я пытаюсь также получить данные внутри узлов. Другими словами, когда он читает первый раздел после тестового раздела, он будет читать:
slnc:DataSet
slnc:Group
slnc:Section
slnc:ActualAvailableToBorrow
*** here ***
slnc:oustandingLoans
Здесь я хочу, чтобы программа чтения текста читала следующие значения внутри узла, например
конфиденциальность="F"
, валюта="USD"
и т. д., но сразу переходит к
следующий раздел, не читая эти значения!
Как заставить программу чтения текста читать значения атрибутов? Было бы идеально, если бы он печатал значение «валюта», а затем его значение: «F» и так далее.