.net 如何读取xml节点值
我有一个xml文件,正在努力读取c中的值“我的名字”# 有人能帮忙吗.net 如何读取xml节点值,.net,c#-4.0,.net,C# 4.0,我有一个xml文件,正在努力读取c中的值“我的名字”# 有人能帮忙吗 <?xml version="1.0" encoding="UTF-8" ?> <doc:SomeReport xsi:schemaLocation="urn:tes:doc:Fsur.0.97 C:\Documents%20and%20Settings\rty0403\Desktop\Smaple%20Sampling%20Schemas\Testdoc.doc.0.97.xsd" xmlns:xsi="
<?xml version="1.0" encoding="UTF-8" ?>
<doc:SomeReport xsi:schemaLocation="urn:tes:doc:Fsur.0.97 C:\Documents%20and%20Settings\rty0403\Desktop\Smaple%20Sampling%20Schemas\Testdoc.doc.0.97.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bie3="urn:tes:data:CommonAggregates:0.97" xmlns:bie1="urn:tes:data:SampleAggregates:0.97" xmlns:doc="urn:tes:doc:Fsur.0.97">
<doc:family>
<doc:first>my name</doc:first>
</doc:family>
</doc:SomeReport>
我的名字
最可能的情况是,您在尝试选择节点之前忘记定义名称空间
有关更多信息,请参阅或。您可以使用以下方法:
这里有一种方法:
XElement xml = XElement.Load(fileName); // load the desired xml file
XNamespace aw = "urn:tes:doc:Fsur.0.97"; // this is the namespace in your xml
var firstName = xml.Element(aw + "family").Element(aw + "first").Value;
这将只获取一个类型为family的元素和一个类型为first的元素。您如何读取该值?给你一个代码示例好吗?给你,匹配不会带来任何东西。XmlDocument xdoc=新的XmlDocument();加载(文件);XmlNodeList matches=xdoc.SelectNodes(//第一);请使用您拥有的任何其他信息更新您的问题。如何传递文件名而不是文本?@melspring:
XElement xml=XElement.Load(filepath)代码>谢谢Darin,很好用!!,只是想知道使用XDocument和下面的XmlDocument xdoc=new XmlDocument()之间有什么区别;加载(文件);XmlNamespaceManager man=新的XmlNamespaceManager(xdoc.NameTable);AddNamespace(“doc”,“urn:tes:doc:Fsur.0.97”);XmlNodeList matches=xdoc.SelectNodes(//doc:first),man);
XElement xml = XElement.Load(fileName); // load the desired xml file
XNamespace aw = "urn:tes:doc:Fsur.0.97"; // this is the namespace in your xml
var firstName = xml.Element(aw + "family").Element(aw + "first").Value;