嗨,我正在努力将文本内容从我的xml文件中删除为字符串。
首先,我选择一个包含以下项目的组合框:
其次,如果我选择“6.00”,我将选择字符串“C:\ folder1” 6.10选择“C:\ folder2” 6.20选择“C:\ folder3”
我的XML文件(path.xml)如下:
<main>
<one>C:\folder1</one>
<two>C:\folder2</two>
<three>C:\folder3></three>
</main>
基本上我需要的是解析这个xml文件并获取文本内容。我该怎么做呢?我试过linq解析:
var prods = from s in
(from c in XElement.Load(@"C:\GUI\path.xml").Descendants("main")
where c.Value.Equals("?????")
select c).Descendants()
select new main()
{
path = s.Value,
};
我有点被困在这里因为看起来每当我使用linq解析时,根据我的组合框的需要不区分字符串
答案 0 :(得分:0)
试试这个linq查询:
string elementName = ... ; // see below
var prods = from c in XElement.Load("XMLFile1.xml").Descendants()
where c.Name.LocalName.Equals(elementName)
select c.Value;
然后,您只需要将ComboBox SelectedIndex的数值转换为规范值(“one”,“two”或“three”)以匹配XML文件中的元素。如果你只有这三个值,那么一个简单的switch()语句可以解决这个问题:
string elementName = "one";
switch (comboBox.SelectedIndex)
{
case 2:
elementName = "two";
break;
case 3:
elementName = "three";
break;
}