c# 追加 数据至xml
1、先把xml读取到内存
string sitemapFileFullNamePath = _Environment.ContentRootPath + "/sitemap.xml"; XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load(sitemapFileFullNamePath); //获得根节点 XmlNode root= xmlDoc.DocumentElement;
2、构建XmlNode对象
var spriderUrl = string.Format("https://www.yadinghao.com/article/details/{0}.html", article_code); XmlNode xe1 = xmlDoc.CreateElement("url"); //创建一个<api>节点 XmlNode xesub1 = xmlDoc.CreateElement("loc"); xesub1.InnerText = spriderUrl;//此处拼接动态地址 xe1.AppendChild(xesub1); XmlNode xesub2 = xmlDoc.CreateElement("lastmod"); xesub2.InnerText = Tools.GetDate(); xe1.AppendChild(xesub2); XmlNode xesub3 = xmlDoc.CreateElement("changefreq"); //是用来告诉搜索引擎网站更新的周期,描述的单词:“always”(经常) 、“hourly”(每时)、“daily”(每天)、“weekly”(每周)、“monthly”(每月)、“yearly”(每年)。像首页就可以用“always”;对于很久前的链接或不再更新内容的链接就可以使用“yearly”。 xesub3.InnerText = "yearly"; xe1.AppendChild(xesub3); XmlNode xesub4 = xmlDoc.CreateElement("priority"); xesub4.InnerText = "0.8"; xe1.AppendChild(xesub4);
3、追加到内存中的xml中
root.AppendChild(xmlDoc.ImportNode(xe1, true));
4、保存xml对象、
xmlDoc.Save(sitemapFileFullNamePath); //此处放xml文件的保存地址