我的项目中有一个字符串数组,我想将其附加到xml。
xml结构是:
<data>
<list>
<item/> <== array
</list>
</data>
我的数组是:
string[] strArr = ["a", "b"];
我的代码
XDocument xml = XDocument.Load(@"myxml.xml");
foreach (var str in strArr )
{
var list = xml.Root.Element("list");
list.Add(new XElement("item", str ));
}
更新问题:
我也想知道为什么我不能在字符串数组中获取xml ..
var strs= from elements in xml.Elements("data").Elements("list") select elements;
foreach (var str in strs)
{
string item= id.Element("item").Value;
strList.Add(item );
}
答案 0 :(得分:1)
初始XML文件内容:
<data>
<list>
</list>
</data>
修改代码如下
string[] strArr = {"a", "b"};
XDocument xml = XDocument.Load(@"myxml.xml");
foreach (var str in strArr )
{
var list = xml.Root.Element("list");
list.Add(new XElement("item", str ));
}
xml.Save(@"myxml.xml");
您缺少Save
函数调用。
用于在字符串数组中添加元素:
var strs = from elements in xml.Root.Element("list").Elements("item") select elements;
foreach (var str in strs)
{
string item = str.Element("item").Value;
strList.Add(item);
}