具有mixed=";的complexType节点;“真的”如何获取innerText及其内部的节点-C#
例如:具有mixed=";的complexType节点;“真的”如何获取innerText及其内部的节点-C#,c#,xml,xpath,C#,Xml,Xpath,例如: <Inflection>innerText1</Inflection> <Inflection>innerText2<Variant>innerText2Variant</Variant></Inflection> innerText1 innerText2innerText2Variant 我们可以通过node.InnerText属性获取C#中的innerText1,但是 我们如何分别获得第2行中节点的以下信息
<Inflection>innerText1</Inflection>
<Inflection>innerText2<Variant>innerText2Variant</Variant></Inflection>
innerText1
innerText2innerText2Variant
我们可以通过node.InnerText属性获取C#中的innerText1,但是
我们如何分别获得第2行中节点的以下信息
- innerText2
- 变量的XmlNode
- innerText2Variant
静态void Main(字符串[]args)
{
字符串strXML=@“innerText1
innerText2innerText2Variant”;
XmlDocument xml=新的XmlDocument();
LoadXml(strXML);
XmlNodeList nodesInflection=xml.SelectNodes(“/root/definction”);
foreach(nodesInflection中的XmlNode)
{
如果(n.ChildNodes.Count==1)
{
Console.WriteLine(n.InnerText);
//或
Console.WriteLine(n.ChildNodes[0].InnerText);
}
其他的
{
Console.WriteLine(n.ChildNodes[0].InnerText);
XmlNode nodeVariant=n.SelectSingleNode(“变量”);
//或
//XmlNode nodeVariant=n.ChildNodes[1];
Console.WriteLine(nodeVariant.InnerText);
}
}
Console.WriteLine(“按任意键”);
Console.ReadKey();
}
第1步,使用而不是一些古老的,应该被遗忘的.Net框架的一部分
static void Main(string[] args)
{
string strXML = @"<root><Inflection>innerText1</Inflection>
<Inflection>innerText2<Variant>innerText2Variant</Variant></Inflection></root>";
XmlDocument xml = new XmlDocument();
xml.LoadXml(strXML);
XmlNodeList nodesInflection = xml.SelectNodes("/root/Inflection");
foreach(XmlNode n in nodesInflection)
{
if (n.ChildNodes.Count == 1)
{
Console.WriteLine(n.InnerText);
//or
Console.WriteLine(n.ChildNodes[0].InnerText);
}
else
{
Console.WriteLine(n.ChildNodes[0].InnerText);
XmlNode nodeVariant = n.SelectSingleNode("Variant");
//or
//XmlNode nodeVariant = n.ChildNodes[1];
Console.WriteLine(nodeVariant.InnerText);
}
}
Console.WriteLine("*******press any key");
Console.ReadKey();
}