我有这个 XML: A型:
<?xml version="1.0" encoding="UTF-8"?>
<nfeProc versao="2.00" xmlns="http://www.portalfiscal.inf.br/nfe">
</nfeProc>
类型 B:
<?xml version="1.0" encoding="UTF-8"?>
<cancCTe xmlns="http://www.portalfiscal.inf.br/cte" versao="1.04">
</cancCTe>
C 型:
<?xml version="1.0" encoding="UTF-8"?>
<cteProc xmlns="http://www.portalfiscal.inf.br/cte" versao="1.04">
</cteProc>
我已经用这个读取了根节点:
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(nomear);
XmlNodeList ml = xmlDoc.GetElementsByTagName("*");
XmlNode primer = xmlDoc.DocumentElement;
exti = primer.Name;
通过这段代码,我读取了nfeProc
、cancTE
和cteProc
。
如何读取 versao
的值?
最佳答案
因为您使用的是 C# 3.5 或更高版本,您可以利用 LINQ to XML(您的标签说您使用的是 C# 4.0,所以它当然适用)
//your xml contents. I've just escaped " symbols, so I can use it as literal
string str = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n "+
"<nfeProc versao=\"2.00\" xmlns=\"http://www" +
".portalfiscal.inf.br/nfe\">\r\n </nfeProc>";
var xml = XDocument.Parse(str);
Console.WriteLine(xml.Root.Attribute("versao").Value);
打印:
2.00
关于c# - 从根节点 XML 读取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15766006/