文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>ASP.NET生成Google网站地图

ASP.NET生成Google网站地图

时间:2010-08-26  来源:星空3

     /// <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("/" + path + "/" + f.Name);
                sb.Replace("//", "/").Replace(@"\", "/");
                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();

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载