| /// <summary>
 /// 生成google网站地图
 /// </summary>
 /// <returns></returns>
 public static boolBuildGoogleSitemap()
 {
 try
 {
 string RootDirectory = AppDomain.CurrentDomain.BaseDirectory;
 XmlTextWriter Writer = new XmlTextWriter(HttpContext.Current.Server.MapPath("~/GoogleSitemaps.xml"), Encoding.GetEncoding("utf-8"));
 Writer.Formatting = Formatting.Indented;
 Writer.WriteStartDocument();
 Writer.WriteStartElement("urlset", "http://www.google.com/schemas/sitemap/0.84");
 //遍历扫描网站所有文件
 showfiles(RootDirectory, Writer);
 Writer.WriteEndElement();
 Writer.WriteEndDocument();
 Writer.Close();
 return true;
 }
 catch (Exception err)
 {
 return false;
 }
 }
 //遍历扫描网站所有文件
 static void showfiles(string dirpath, XmlTextWriter Writer)
 {
 bool IsRead = true;
 string[] NotRead ={ "App_Data", "Bin", "fckeditor", "js", "MyAdmin", "PowerChatRoom" };//排除这些文件夹
 foreach (string s in NotRead)
 {
 string dirname = dirpath.Substring(dirpath.LastIndexOf(@"") + 1);
 if (dirname == s)
 {
 IsRead = false;
 break;
 }
 }
 if (!IsRead)
 return;
 try
 {
 DirectoryInfo dir = new DirectoryInfo(dirpath);
 foreach (FileInfo f in dir.GetFiles())
 {
 string path = dir.FullName.Replace(AppDomain.CurrentDomain.BaseDirectory, "");//文件相对目录
 //HttpContext.Current.Response.Write(AppDomain.CurrentDomain.BaseDirectory + "**********" + dir.FullName + "<br>");
 Writer.WriteStartElement("url");
 Writer.WriteStartElement("loc");
 StringBuilder sb = new StringBuilder("http://www.jb51.net/" + path + "http://www.jb51.net/" + f.Name);
 sb.Replace("//", "http://www.jb51.net/").Replace(@"", "http://www.jb51.net/");
 Writer.WriteString(ConfigurationManager.AppSettings["WebSiteUrl"].ToString() + sb.ToString());
 Writer.WriteEndElement();
 Writer.WriteStartElement("lastmod");
 Writer.WriteString(string.Format("{0:yyyy-MM-dd}", f.LastWriteTime));
 Writer.WriteEndElement();
 Writer.WriteStartElement("changefreq");
 Writer.WriteString("always");//更新频率:always:经常,hourly:小时,daily:天,weekly:周,monthly:月,yearly:年
 Writer.WriteEndElement();
 Writer.WriteStartElement("priority");
 Writer.WriteString("0.8");//相对于其他页面的优先权,此值定于0.0 - 1.0之间
 Writer.WriteEndElement();
 Writer.WriteEndElement();
 }
 foreach (DirectoryInfo d in dir.GetDirectories())
 {
 showfiles(d.FullName, Writer);
 }
 }
 catch (Exception) { }
 }
 
 (编辑:宣城站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |