asp.net使用静态模板

 

首先写一个静态网页 template.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>$title$ </title>

    <meta http-equiv="content-type" content="text/html;charset=UTF-8" />

    <style type="text/css">

<!--

.STYLE1 {

font-size: 16px;

font-weight: bold;

 

 }

-->

</style>

</head>

<body>

    <br />

    <br />

    <table width="100%" border="0" bgcolor="#339900">

        <tr>

            <td align="center" bgcolor="#FFFFFF" style="height: 34px">

                <span class="STYLE1">$title$ </span>

            </td>

        </tr>

        <tr>

            <td height="42" bgcolor="#FFFFFF">

                <br />

                <br />

                内容:$content$

            </td>

        </tr>

    </table>

</body>

</html>

 

 

 

 

Default.aspx前台页面源码:

 

 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!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 runat="server">

 <title></title>

</head>

<body>

 <form id="form1" runat="server">

 <div>

 标题:<asp:TextBox ID="txtTitle" runat="server" Width="352px"></asp:TextBox><br />

 内容:<asp:TextBox ID="txtContent" runat="server" Height="179px" TextMode="MultiLine"

 Width="350px"></asp:TextBox><br />

 <br />

 <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="生成静态页" /><br />

 </div>

 </form>

</body>

</html>


Default.aspx.cs源码:

C#代码

using System;

using System.Collections.Generic;

using System.Web;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Text;

using System.IO;

public partial class _Default : System.Web.UI.Page

{

protected void Page_Load(object sender, EventArgs e)

{

}

protected void Button1_Click(object sender, EventArgs e) {

 

 

 //思路是替换掉模板中的特征字符

 

        string mbPath = Server.MapPath("text.html");

 

        Encoding code = Encoding.GetEncoding("UTF-8");

 

        StreamReader sr = null;

 

        StreamWriter sw = null;

 

        string str = null;

 

        //读取

 

        try

        {

 

            sr = new StreamReader(mbPath, code);

 

            str = sr.ReadToEnd();

 

        }

 

        catch (Exception ex)

        {

 

            throw ex;

 

        }

 

        finally

        {

 

            sr.Close();

 

        }

 

        //根据时间自动重命名,扩展名也可以自行修改

 

        string fileName = DateTime.Now.ToString("yyyyMMddHHmmss") + ".htm";

 

        str = str.Replace("$title$", txtTitle.Text);//替换Title

 

        str = str.Replace("$content$", txtContent.Text);//替换content

 

//在项目下建立个htm文件夹,用于放生成的静态网页

        //生成静态文件

 

        try

        {

 

            sw = new StreamWriter(Server.MapPath("htm/") + fileName, false, code);

 

            sw.Write(str);

 

            sw.Flush();

            Response.Write("恭喜<a href=htm/" + fileName + " target=_blank>" + fileName + "</a>已经生成,保存在htm文件夹下!");

 

        }

 

        catch (Exception ex)

        {

 

            throw ex;

 

        }

 

        finally

        {

 

            sw.Close();

        }

 

 

     }

 

}

 

转载自:http://hi.baidu.com/oneshotonekill/blog/item/46b919971f579c6754fb962c.html

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值