用模板生成HTML页

    //使用模板生成HTML页   
    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.html");
        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") + ".html";
        // 替换内容
        // 这时,模板文件已经读入到名称为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;
    }


猜你喜欢

转载自blog.csdn.net/engravesmile/article/details/69255226