ASP.NET中根据模板生成静态页!

来源:互联网 发布:java自动编译 编辑:程序博客网 时间:2024/05/21 08:49
 从51aspx.com网站上下到的源码,预先定义好htm,然后在后面添加标题和内容后把标题和内容放在定义好的htm中生成静态页,觉得蛮有用的,先记下来了,以后改进我的那个新闻发布系统的话肯定会用到这招,嘿嘿!

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 height="34" align="center" bgcolor="#FFFFFF"><span class="STYLE1">$title$ </span></td>  </tr>  <tr>    <td height="42" bgcolor="#FFFFFF"><br />      <br />    内容:$content$ </td>  </tr></table><a href="http://www.51aspx.com" target="_blank">51aspx.com 版权所有</a></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源码: 

using System;using System.Collections.Generic;using System.Linq;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("template.htm");        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{1}quot;, txtTitle.Text);//替换Title        str = str.Replace("$content{1}quot;, txtContent.Text);//替换content        //生成静态文件        try        {            sw = new StreamWriter(Server.MapPath("htm/") + fileName, false, code);            sw.Write(str);            sw.Flush();        }        catch (Exception ex)        {            throw ex;        }        finally        {            sw.Close();            Response.Write("恭喜<a href=htm/" + fileName + " target=_blank>" + fileName + "</a>已经生成,保存在htm文件夹下!");        }    }}

源码下载:http://niunan.net/download/genstatichtml.7z

源代码代码保存在50***邮箱中。

原创粉丝点击