我希望使用C#迭代XML文件中所有给定标记的所有属性,如本例所示。
XmlTextReader reader = new XmlTextReader("C:\\PathToXml\File.xml");
var optionTitle = reader.Name;
var AttributeName = reader.LocalName;
var AttributeValue = reader.GetAttribute(AttributeName);
var itemValue = new ListViewItem(new[] { optionTitle, AttributeName, AttributeValue });
listView1.Items.Add(itemValue);
XML很长,标签和属性命名可以更改。 因此,我必须找到一种方法来使用未知命名迭代它们。 我用
进行了测试{{1}}
但我只获得标签名称而没有别的......
有没有人对我有所了解?
答案 0 :(得分:1)
我更喜欢使用Linq2Xml
V3(double, double, double)
V3(const V3 &)
V3(const V3 &)
V4(V3, double)
答案 1 :(得分:0)
您应该使用XDocument类,它可以更简单地访问XML文档。
var doc = XDocument.Load("C:\\PathToXml\File.xml");
foreach(var el in doc.Descendants())
foreach(var attr in el.Attributes())
{
var itemValue = new ListViewItem(new[] { el.TagName, attr.Name, attr.Value });
listView1.Items.Add(itemValue);
}
答案 2 :(得分:0)
您应该使用XDocument
加载xml文件。然后使用XElement.Attributes
这样的
var document = XDocument.Load("C:\\PathToXml\File.xml");
foreach (var attribute in document.Root.Attributes)
{
//process the attribute
//attribute.Name
//attribute.Value
}