1.此处为Demo,借鉴别人的生成 xml
//创建xml文件方法一protected void btn1_OnClick(object sender, EventArgs e){XmlText xmltext;XmlDocument xmldoc = new XmlDocument();//加入XML的声明段落XmlNode xmlnode = xmldoc.CreateXmlDeclaration("1.0", "gb2312", null);xmldoc.AppendChild(xmlnode);//加入一个根元素XmlElement xmlelem = xmldoc.CreateElement("", "bookstore", "");xmltext = xmldoc.CreateTextNode("");xmlelem.AppendChild(xmltext);xmldoc.AppendChild(xmlelem);//加入一个子元素XmlElement xmlelem1 = xmldoc.CreateElement("", "book", "");xmltext = xmldoc.CreateTextNode("");xmlelem1.AppendChild(xmltext);//为子元素"book"增加两个属性xmlelem1.SetAttribute("genre", "", "fantasy");xmlelem1.SetAttribute("ISBN", "2-3631-4");xmldoc.ChildNodes.Item(1).AppendChild(xmlelem1);//创建三个子元素的子元素XmlElement xmlelem2 = xmldoc.CreateElement("", "title", "");xmltext = xmldoc.CreateTextNode("Oberon's Legacy");xmlelem2.AppendChild(xmltext);xmldoc.ChildNodes.Item(1).AppendChild(xmlelem1).AppendChild(xmlelem2);XmlElement xmlelem3 = xmldoc.CreateElement("", "author", "");xmltext = xmldoc.CreateTextNode("Corets, Eva");xmlelem3.AppendChild(xmltext);xmldoc.ChildNodes.Item(1).AppendChild(xmlelem1).AppendChild(xmlelem3);XmlElement xmlelem4 = xmldoc.CreateElement("", "price", "");xmltext = xmldoc.CreateTextNode("5.95");xmlelem4.AppendChild(xmltext);xmldoc.ChildNodes.Item(1).AppendChild(xmlelem1).AppendChild(xmlelem4);xmldoc.Save(Server.MapPath("bookstore.xml")); //保存}//创建xml文件方法二protected void btn2_OnClick(object sender, EventArgs e){XmlDocument xmldoc = new XmlDocument(); //创建空的XML文档xmldoc.LoadXml("" +"" +"" +"" +"Corets, Eva" +"5.95" +"" +"");xmldoc.Save(Server.MapPath("bookstore2.xml")); //保存}如果如下:Corets, Eva5.95不是我想要的网站地图xml文件。2.以下是我自己根据实际情况写的using System;using System.Collections.Generic;using System.IO;using System.Threading;using System.Xml;namespace Helper{public class SitemapXml{private const string Xmlns = "";private const string XmlnsXsi = "";private const string XsiSchemaLocation = " ";////// 生成SiteMap地图//////需要生成的 对象列表///设置文件保存名称///更新周期///xml文件保存路径///public static bool CreateSiteMapXml(ListsiteMaps, string savePath = "/", string saveFileName = "sitemap", string changefreq = "weekly"){//保存创建好的XML文档string filename = saveFileName + ".xml";string path = System.Web.HttpContext.Current.Server.MapPath(savePath) + filename;//先创建XML,返回路径var xmldoc = new XmlDocument();//加入XML的声明段落,XmlDeclaration xmldecl = xmldoc.CreateXmlDeclaration("1.0", "UTF-8", null);xmldoc.AppendChild(xmldecl);//加入一个根元素XmlNode xmlelem = xmldoc.CreateElement("", "urlset", "");//添加属性XmlAttribute attr = xmldoc.CreateAttribute("xmlns");attr.Value = Xmlns;if (xmlelem.Attributes != null) xmlelem.Attributes.SetNamedItem(attr);attr = xmldoc.CreateAttribute("xmlns:xsi");attr.Value = XmlnsXsi;if (xmlelem.Attributes != null) xmlelem.Attributes.SetNamedItem(attr);attr = xmldoc.CreateAttribute("xsi:schemaLocation");attr.Value = XsiSchemaLocation;if (xmlelem.Attributes != null) xmlelem.Attributes.SetNamedItem(attr);xmldoc.AppendChild(xmlelem);string lastmod = DateTime.Now.ToString("yyyy-MM-dd");for (int i = 0; i < siteMaps.Count; i++){XmlNode root = xmldoc.SelectSingleNode("urlset");//查找if (root == null){//加入一个根元素xmlelem = xmldoc.CreateElement("", "urlset", "");//添加属性attr = xmldoc.CreateAttribute("xmlns");attr.Value = Xmlns;if (xmlelem.Attributes != null) xmlelem.Attributes.SetNamedItem(attr);attr = xmldoc.CreateAttribute("xmlns:xsi");attr.Value = XmlnsXsi;if (xmlelem.Attributes != null) xmlelem.Attributes.SetNamedItem(attr);attr = xmldoc.CreateAttribute("xsi:schemaLocation");attr.Value = XsiSchemaLocation;if (xmlelem.Attributes != null) xmlelem.Attributes.SetNamedItem(attr);xmldoc.AppendChild(xmlelem);i = 0;continue;}XmlElement xe1 = xmldoc.CreateElement("url");//创建一个节点XmlElement xmlelem1 = xmldoc.CreateElement("", "loc", "");XmlText xmltext = xmldoc.CreateTextNode(siteMaps[i].Loc);xmlelem1.AppendChild(xmltext);xe1.AppendChild(xmlelem1);xmlelem1 = xmldoc.CreateElement("", "priority", "");xmltext = xmldoc.CreateTextNode(siteMaps[i].Priority);xmlelem1.AppendChild(xmltext);xe1.AppendChild(xmlelem1);xmlelem1 = xmldoc.CreateElement("", "lastmod", "");xmltext = xmldoc.CreateTextNode(lastmod);xmlelem1.AppendChild(xmltext);xe1.AppendChild(xmlelem1);xmlelem1 = xmldoc.CreateElement("", "changefreq", "");xmltext = xmldoc.CreateTextNode(changefreq);xmlelem1.AppendChild(xmltext);xe1.AppendChild(xmlelem1);root.AppendChild(xe1);//添加到节点中}try{//然后在保存到源位置xmldoc.AppendChild(xmlelem);xmldoc.Save(path);return true;}catch (Exception){return false;}}}///////////////0.5///2014-08-19///weekly/////////public class SiteMap{////// 链接地址/// 如:///public string Loc { get; set; }////// 网页权重/// 0.1 - 1///public string Priority { get; set; }////// 生成日期/// 2014-08-19///public string Lastmod { get; set; }////// 更新周期/// always 经常/// hourly 每小时/// daily 每天/// weekly 每周/// monthly 每月/// yearly 每年/// never 从不///public string Changefreq { get; set; }}}生成的结果为:1.002014-08-19weekly希望可以帮助到你!SEO专题推荐:关键词优化专题:网站关键词优化没效果?来这里学习最实用的关键词优化技巧!内链优化专题:最能提升网站权重的内链部署优化技巧与方法外链建设专题:高质量自然外链怎么做?读完这些你将质的飞跃网站降权专题:2015年最有用的网站降权、被K、被黑、被攻击的解决方法用户体验专题:学习完这些,作为站长的你可以秒懂如何做网站用户体验行业网站专题:优化行业网站的“葵花宝典”看完后无优化压力
