Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Can';无法从XmlTextReader访问Xml值_C#_Xml - Fatal编程技术网

C# Can';无法从XmlTextReader访问Xml值

C# Can';无法从XmlTextReader访问Xml值,c#,xml,C#,Xml,我有一个XmlTextReader对象,我正在尝试使用它读取下面的xml: <string xmlns="http://schemas.microsoft.com/2003/10/Serialization/">STRING GOES HERE</string> 字符串在这里 但是,当我检查xmReader.Value时,下面的代码编译并运行。它是空的。我很困惑,因为它应该有值“stringgoeshere”。有人能帮我找出为什么我不能访问该值吗 string xml

我有一个XmlTextReader对象,我正在尝试使用它读取下面的xml:

<string xmlns="http://schemas.microsoft.com/2003/10/Serialization/">STRING GOES HERE</string>
字符串在这里
但是,当我检查xmReader.Value时,下面的代码编译并运行。它是空的。我很困惑,因为它应该有值“stringgoeshere”。有人能帮我找出为什么我不能访问该值吗

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);
}
string xmlstrdoc=“string在这里”;
XmlTextReader=newxmltextreader(new System.IO.StringReader(xmlstrdoc));
while(xmReader.Read())
{
Console.WriteLine(xmReader.Name);
Console.WriteLine(xmReader.Value);
}

无法获得预期结果的原因是XmlTextReader.Read读取每种节点类型。第一次调用Read()时,它读取XmlNodeType.Element。第二次调用Read()时,它将读取XmlNodeType.Text NodeType

请参见此处的编码示例


尽管看起来您正在寻找更像。

FYI的东西,但您不应该使用
new XmlTextReader()
new XmlTextWriter()
。自.NET 2.0以来,它们一直被弃用。改用
XmlReader.Create()
XmlWriter.Create()
XDocument
,这样界面更好。