生成静态网页,函数,引用过程

//生成HTM页
   public static bool WriteFile(string strText, string strContent, string strAuthor)
   {
       string path = HttpContext.Current.Server.MapPath("news/");
       Encoding code = Encoding.GetEncoding("gb2312");
       // 读取模板文件
       string temp = HttpContext.Current.Server.MapPath("news/text.htm");
       StreamReader sr = null;
       StreamWriter sw = null;
       string str = "";
       try
       {
           sr = new StreamReader(temp, code);
           str = sr.ReadToEnd(); // 读取文件
       }
       catch (Exception exp)
       {
           HttpContext.Current.Response.Write(exp.Message);
           HttpContext.Current.Response.End();
           sr.Close();
       }
       string htmlfilename = DateTime.Now.ToString("yyyyMMddHHmmss") + ".htm";
       // 替换内容
       // 这时,模板文件已经读入到名称为str的变量中了
       str = str.Replace("ShowArticle", strText); //模板页中的ShowArticle
       str = str.Replace("biaoti", strText);
       str = str.Replace("content", strContent);
       str = str.Replace("author", strAuthor);
       // 写文件
       try
       {
           sw = new StreamWriter(path + htmlfilename, false, code);
           sw.Write(str);
           sw.Flush();
       }
       catch (Exception ex)
       {
           HttpContext.Current.Response.Write(ex.Message);
           HttpContext.Current.Response.End();
       }
       finally
       {
           sw.Close();
       }
       return true;
   }

 

//模板text.htm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>ShowArticle</title>
</head>
<body>
    biaoti
    <br />
    content<br />
    author biaoti
    <br />
    content
    <br />
    author
</body>
</html>

 

 

//引用过程

if (!IsPostBack)
     {
         DataTable dt = new categorydao().selecthotnews();
         GridView1.DataSource = dt;
         GridView1.DataBind();

         string strText = "id="+dt.Rows[0][0].ToString();
         string strContent = "title"+dt.Rows[0][2].ToString();
         string strAuthor = "content"+dt.Rows[0][3].ToString();
         if (WriteFile(strText, strContent, strAuthor))
         {
             Response.Write("ok");
         }
         else
         {
             Response.Write("false");
         }
     }

posted @ 2013-04-03 22:15  侯伟东  阅读(150)  评论(0编辑  收藏  举报