C# 检查xmlReader是否为具体的结束元素
我已经设置了xmlReader,可以检查某些元素,但是我找不到检查结束元素的方法,假设我想在开始元素之外为C# 检查xmlReader是否为具体的结束元素,c#,xml,xmlreader,C#,Xml,Xmlreader,我已经设置了xmlReader,可以检查某些元素,但是我找不到检查结束元素的方法,假设我想在开始元素之外为标记添加另一个case语句,我该怎么做?我确信这样的标签不会自动关闭 using (XmlReader reader = XmlReader.Create("perls.xml")) { while (reader.Read()) { // Only detect start elements. if (reader.IsStartElement())
标记添加另一个case语句,我该怎么做?我确信这样的标签不会自动关闭
using (XmlReader reader = XmlReader.Create("perls.xml"))
{
while (reader.Read())
{
// Only detect start elements.
if (reader.IsStartElement())
{
// Get element name and switch on it.
switch (reader.Name)
{
case "perls":
// Detect this element.
Console.WriteLine("Start <perls> element.");
break;
case "article":
// Detect this article element.
Console.WriteLine("Start <article> element.");
// Search for the attribute name on this current node.
string attribute = reader["name"];
if (attribute != null)
{
Console.WriteLine(" Has attribute name: " + attribute);
}
// Next read will contain text.
if (reader.Read())
{
Console.WriteLine(" Text node: " + reader.Value.Trim());
}
break;
}
}
}
}
使用(XmlReader=XmlReader.Create(“perls.xml”))
{
while(reader.Read())
{
//仅检测开始元素。
if(reader.IsStartElement())
{
//获取元素名称并打开它。
开关(reader.Name)
{
案例“perls”:
//检测此元素。
Console.WriteLine(“开始元素”);
打破
案例“第条”:
//检测此项目元素。
Console.WriteLine(“开始元素”);
//在此当前节点上搜索属性名称。
字符串属性=读卡器[“名称”];
if(属性!=null)
{
Console.WriteLine(“具有属性名称:”+属性);
}
//下一次阅读将包含文本。
if(reader.Read())
{
Console.WriteLine(“文本节点:+reader.Value.Trim());
}
打破
}
}
}
}
检查NodeType
是否等于XmlNodeType.EndElement
,例如:
if (reader.NodeType == XmlNodeType.EndElement)
{
....
}
供参考: