What is XMLNodeType - C#?

本文关键字:XMLNodeType is What | 更新日期: 2023-09-27 18:29:46

有人能用外行的话解释一下这到底是怎么回事吗?

XmlTextReader textReader = new XmlTextReader(workingDir + @"'ModulesList.xml");
            textReader.Read();
                if (textReader.Name == "Name")
                {
                    textReader.Read();
                    XmlNodeType nType = textReader.NodeType;
                }
                if (nType == XmlNodeType.Text)
                {
                    listBox1.Items.Add(textReader.Value.ToString());
                }

我不理解XmlNodeType和NodeType在文本读取器上的用途。请有人用最简单的方式清理一下:P

What is XMLNodeType - C#?

XmlReader就像是XML文档中的仅向前光标。除了您的代码不会编译(您在一个块中声明nType,然后在另一个块使用它)之外,XmlReader.NodeType还返回XML读取器正在查看的当前类型的节点-元素、文本节点、属性等。XmlNodeTypeXmlReader.NodeType的可能值的枚举。

每次调用Read时,读取器都会转到下一个节点,而您想对该节点执行什么操作通常取决于其类型。

就我个人而言,我会避开XmlReader,除非你试图阅读一个不适合记忆的巨大文档。与将整个文档加载到树中并让您在树中导航的API相比,正确使用API要困难得多。LINQ to XML是一个特别好的API,如果您处于可以使用它的情况下。

我认为MSDN可以把它总结得最好。

缩写为XmlNodeType是一个枚举,定义当前通过XmlReader 在Xml中读取的Xml节点的类型