曹永思

导航

asp.net 生成静态HTML方法

.net重写URL:http://www.cnblogs.com/yonsy/archive/2012/09/21/2696935.html
  public static bool WriteFile(string strText, string strContent, string strAuthor)
        {
            string path = HttpContext.Current.Server.MapPath("/mode/");
            Encoding code = Encoding.GetEncoding("gb2312");
            // 读取模板文件
            string temp = HttpContext.Current.Server.MapPath("/mode/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;
        }
View Code

 

posted on 2012-08-17 17:42  曹永思  阅读(166)  评论(0编辑  收藏  举报