无法从XmlTextReader访问Xml值

本文关键字:Xml 访问 XmlTextReader | 更新日期: 2023-09-27 18:12:04

我有一个XmlTextReader对象,我试图阅读下面使用它的xml:

<string xmlns="http://schemas.microsoft.com/2003/10/Serialization/">STRING GOES HERE</string>

下面的代码编译和运行,但当我检查xmReader。值为空。我很困惑,因为它应该有值"字符串到这里"。谁能帮我弄清楚为什么我不能访问这个值?

string xmlstrdoc = "<string xmlns="http://schemas.microsoft.com/2003/10/Serialization/">STRING GOES HERE</string>";
XmlTextReader xmReader = new XmlTextReader(new System.IO.StringReader(xmlstrdoc));
while(xmReader.Read())
{
    Console.WriteLine(xmReader.Name);
    Console.WriteLine(xmReader.Value);
}

无法从XmlTextReader访问Xml值

您没有得到您所期望的原因是因为XmlTextReader。Read读取每个节点类型。第一次调用Read()时,它读取XmlNodeType。NodeType元素。第二次调用Read()时,它将读取XmlNodeType。文本NodeType。

请参阅此处的编码示例http://msdn.microsoft.com/en-us/library/system.xml.xmltextreader.read(v=vs.110).aspx。

虽然看起来您正在寻找更像XmlDocument的东西。