新增自制标签成功

2011-1-12 16:42:53 - 谭礼孝

      2011年1月12日,恭喜网站新增加了标签链接的功能块(见网站的右栏最下边),本来要去网上的Tag Cloud生成一个,谁知道中文显示乱码,而且抓取的标签又比较少,我之前在数据库的表中新建了标签字段,就是为了搜索引擎优化的,呵呵,我就大概介绍制作的步骤吧:
    
       一:先从数据库中读取标签列里的所有字段,然后再过滤,返回一数组;

       二:再根据这一数组用foreach循环生成标签的链接字符列表,放在一div中,在显示就行了;

       三:但是我是让标签以htm的文件显示在页面中,就是生成一静态页,不然动态页总读取数据库,比较耗性能;我就添加了生成静态页的功能,还得去网上查资料啊,google还是我老师;

       四:先弄输出的功能,代码如下:
            Response.Clear();
            Response.Buffer = true;
            //filename=FileFlow.xls 指定输出文件的名称,注意其扩展名和指定文件类型相符,可以为:.doc  .xls  .txt .htm
            Response.AppendHeader("Content-Disposition", "attachment;filename=filename");
            Response.ContentEncoding = System.Text.Encoding.Default;
            //Response.ContentType指定文件类型 可以为application/ms-excel,application/ms-word,application/ms-txt,application/ms-html,或其他 浏览器可直接支持文档
            Response.ContentType = "application/ms-html";
            //tag's string是要输出的字符串
            Response.Write("tag's string");
            Response.Flush();
            Response.End();
            this.EnableViewState = false;
这样就可以输出htm页面了,先在本地查看是否正常然后再上传到服务器端进行更新,这样比较保险一点;还有一种情况就是直接生成静态页面然后覆盖到服务器上,这就要用到绝对路径和写字符流了;

       五:
            string filePath = HttpContext.Current.Server.MapPath("~/filePath");//获取文件夹的路径
            using (System.IO.StreamWriter sw = new System.IO.StreamWriter(filePath, false, System.Text.Encoding.Default))
            {
                sw.Write(str);//str是要输出的标签字符串
                result = true;
            }
           用using可自动关闭字符流;
才发现为什么Tag Cloud网站抓取不到我的标签,我弄的标签没加上链接,所以没抓取到,真悲剧啊,不过自己还是做了标签的功能,就用着吧

标签:标签

关于我

喜欢简简单单的生活.

记录平凡世界的点滴

-于2010年12月31日

联系我

  • 微信:fishren
  • 邮箱:
    tanlixiao@163.com
  • Address:
    中国最南端的滨海城市
    河西区 解放路 502