【发布时间】:2017-11-23 11:42:20
【问题描述】:
我在尝试获取 XML 文件中嵌套元素的值时遇到问题。
-<Modules>
-<Modules4>
-<Module>
<Name>dasd</Name>
<Code>dasdasdas</Code>
<Credits>40</Credits>
</Module>
-<Module>
<Name>dasdasd</Name>
<Code>dasdasd</Code>
<Credits>40</Credits>
</Module>
</Modules4>
<Modules5/>
<Modules6/>
</Modules>
这是 XML 文件,我正在尝试创建一个条件,如果读者找到“Modules4”元素,则如果已回答此问题,则获取嵌套元素“名称”、“代码”和“信用”,请指导我,因为我在任何地方都找不到它。
using (XmlReader reader = XmlReader.Create("SavedData.xml"))
while (reader.Read())
{
if (reader.IsStartElement())
{
if (reader.Name == "Modules4"){
switch (reader.Name)
{
case "Name":
string name = reader.ReadString();
Console.WriteLine(name);
break;
case "Code":
string Code = reader.ReadString();
Console.WriteLine(Code);
break;
case "Credits":
break;
}
}
}
}
}
这是我的代码。
谢谢。
【问题讨论】:
-
首先,您确定需要 XmlReader(即您的数据约为 1GB 或更多)吗?因为使用 XElement 会容易得多。
-
我没用过,只是觉得 XmlReader 更简单。
-
你想的很不对。看看 System.Xml.Linq;