/// <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) { } }
(编辑:晋中站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|