ASP.NET动态生成静态页面的方法

     {
    public static bool CreateHtml(”参数的数量可以在次添加“ )
    {

       //文件输出目录
        string path = HttpContext.Current.Server.MapPath("取得要放置生成静态网页的路径 ");
        //编码格式----中国汉字
        Encoding code = Encoding .GetEncoding("gb2312 ");



        // 读取模板文件


        string temp = HttpContext.Current.Server.MapPath("取得母页版的路径 ");//模版文件

       //定义文件流的读和写操作。
        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";//静态文件名

        // 替换内容,就是替换 NewsModule.html 的变量
        str = str.Replace("母页中的需要被代替的字段变量 ", 代替字段的变量 ); //模板页中的ShowArticle
        str = str.Replace("母页中的需要被代替的字段变量 ", 代替字段的变量 );
       // str = str.Replace("母页中的需要被代替的字段变量 ", 代替字段的变量 );
        string filestr = DateTime.Now.ToString("yyyy-MM");
        if (!Directory.Exists(HttpContext.Current.Server.MapPath("~/News/" + filestr)))
            Directory.CreateDirectory(HttpContext.Current.Server.MapPath("~/News/" + filestr));
        // 写文件
        try
        {
            sw = new StreamWriter(“路径”+ htmlfilename, false, code);
            filestrref = filestr;
            htmlfilenameref = htmlfilename;
            sw.Write(str);
            sw.Flush();
        }
        catch (Exception ex)
        {
            HttpContext.Current.Response.Write(ex.Message);
            HttpContext.Current.Response.End();
        }
        finally
        {

            ///文件流的读取与写入需要关闭流
            sw.Close();
        }
        return true;
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值