1个回答
展开全部
1.读取并修改XML数据。
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(xmlpath);//加载xml文件,xmlpath 为XML文件的路径
//查找要修改的节点,从根节点开始,否则会报错
XmlNode xns = xmlDoc.SelectSingleNode("root/children");
XmlNodeList xnl = xns.ChildNodes;//取出所有的子节点
//遍历子节点
foreach (XmlNode xn in xnl)
{
XmlElement xe = (XmlElement)xn;//将节点转换一下类型
//判断该子节点是否是要查找的节点 (通过节点属性值,查找指定节点)
if (xe.GetAttribute("ID") == "ID")
{
XmlNodeList xnl2 = xe.ChildNodes;//取出该子节点下面的所有元素
foreach (XmlNode xn2 in xnl2)
{
XmlElement xe2 = (XmlElement)xn2;//转换类型
if (xe2.Name == "childname")//最小节点,通过名称查找定位节点
{
xe2.InnerText ="节点值";//直接修改节点的值
}
}
//如果需要遍历多次,则不用break;
break;//如果更新完了指定节点,有需要则退出循环
}
}
xmlDoc.Save(xmlpath);//保存的该XML文件,否则更新无效
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(xmlpath);//加载xml文件,xmlpath 为XML文件的路径
//查找要修改的节点,从根节点开始,否则会报错
XmlNode xns = xmlDoc.SelectSingleNode("root/children");
XmlNodeList xnl = xns.ChildNodes;//取出所有的子节点
//遍历子节点
foreach (XmlNode xn in xnl)
{
XmlElement xe = (XmlElement)xn;//将节点转换一下类型
//判断该子节点是否是要查找的节点 (通过节点属性值,查找指定节点)
if (xe.GetAttribute("ID") == "ID")
{
XmlNodeList xnl2 = xe.ChildNodes;//取出该子节点下面的所有元素
foreach (XmlNode xn2 in xnl2)
{
XmlElement xe2 = (XmlElement)xn2;//转换类型
if (xe2.Name == "childname")//最小节点,通过名称查找定位节点
{
xe2.InnerText ="节点值";//直接修改节点的值
}
}
//如果需要遍历多次,则不用break;
break;//如果更新完了指定节点,有需要则退出循环
}
}
xmlDoc.Save(xmlpath);//保存的该XML文件,否则更新无效
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询