[英]Reading XML file in C#
一部分xml文件:
<publisher>
<name>ABC</name>
<id>943</id>
</publisher>
C#:
string publisher = n.SelectSingleNode(".//publisher").InnerText;
Console.WriteLine(publisher + "\n");
c#程序从xml文件中读取文本。 我遇到的问题是publisher
者的字符串值为ABC943
。 有没有办法只返回字符串值ABC
?
好的,谢谢你的回答。 我有另一个问题!!! 让我们说:
<publisher>
<name>ABC</name>
<id>943</id>
</publisher>
<publisher>
<name>DEF</name>
<id>3453</id>
</publisher>
C#代码:
string publisher = n.SelectSingleNode(".//publisher//name").InnerText; Console.WriteLine(publisher + "\\n");
现在,这只会读ABC。 我该怎么做才能让它读到ABC,DEF? 出版商数量可能会有所不同..
publisher = n.SelectSingleNode(".//publisher//name").InnerText;
Console.WriteLine(publisher + "\n");
对于多个节点,请使用XmlNode.SelectNodes :
XmlNodeList xnl = n.SelectNodes(".//publisher//name");
foreach(XmlNode xn in xnl)
{
Console.WriteLine(xn.InnerText + "\n");
}
另一种方案:
publisher = n.SelectSingleNode("//publisher/name/text()");
Console.WriteLine(publisher + "\n");
此外,你不需要。 在xpath的开头。 “//”也会将您带到文档的根目录。
在回答第二个问题时,如果您只想要第一个“名称”,那么请使用此xpath:
//publisher/name[1]/text()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.