Asp.net生成静态文件(根据时间自动命名保持,默认扩展名是htm可以自行修改).
通过收入内容替换模板或者url地址两种方式进行静态文件的生成
templete.htm为模板文件,htm为生成后的静态文件保持位置
代码如下:
<%
@ 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 />
< br />
< br />
Url地址: < asp:TextBox ID ="txtUrl" runat ="server" ToolTip ="请确认Url地址的存在" Width ="359px" ></ asp:TextBox >
< br />
< br />
< asp:Button ID ="Button2" runat ="server" Text ="根据Url地址生成" OnClick ="Button2_Click" /></ div >
</ form >
</ body >
</ html >
<! 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 />
< br />
< br />
Url地址: < asp:TextBox ID ="txtUrl" runat ="server" ToolTip ="请确认Url地址的存在" Width ="359px" ></ asp:TextBox >
< br />
< br />
< asp:Button ID ="Button2" runat ="server" Text ="根据Url地址生成" OnClick ="Button2_Click" /></ div >
</ form >
</ body >
</ html >
codeBehind代码如下:
using
System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Net;
using System.Text;
using System.IO;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load( object sender, EventArgs e)
{
}
// 根据模板生成,保持在html文件夹中(部分源码搜集于网络)
protected void Button1_Click( object sender, EventArgs e)
{
// 源码是替换掉模板中的特征字符
string mbPath = Server.MapPath( " template.htm " );
Encoding code = Encoding.GetEncoding( " gb2312 " );
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
// 生成静态文件
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文件夹下! " );
}
}
// 根据Url地址生成静态页保持
protected void Button2_Click( object sender, EventArgs e)
{
Encoding code = Encoding.GetEncoding( " utf-8 " );
StreamReader sr = null ;
StreamWriter sw = null ;
string str = null ;
// 读取远程路径
WebRequest temp = WebRequest.Create(txtUrl.Text.Trim());
WebResponse myTemp = temp.GetResponse();
sr = new StreamReader(myTemp.GetResponseStream(), code);
// 读取
try
{
sr = new StreamReader(myTemp.GetResponseStream(), code);
str = sr.ReadToEnd();
}
catch (Exception ex)
{
throw ex;
}
finally
{
sr.Close();
}
string fileName = DateTime.Now.ToString( " yyyyMMddHHmmss " ) + " .htm " ;
// 写入
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文件夹下! " );
}
}
}
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Net;
using System.Text;
using System.IO;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load( object sender, EventArgs e)
{
}
// 根据模板生成,保持在html文件夹中(部分源码搜集于网络)
protected void Button1_Click( object sender, EventArgs e)
{
// 源码是替换掉模板中的特征字符
string mbPath = Server.MapPath( " template.htm " );
Encoding code = Encoding.GetEncoding( " gb2312 " );
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
// 生成静态文件
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文件夹下! " );
}
}
// 根据Url地址生成静态页保持
protected void Button2_Click( object sender, EventArgs e)
{
Encoding code = Encoding.GetEncoding( " utf-8 " );
StreamReader sr = null ;
StreamWriter sw = null ;
string str = null ;
// 读取远程路径
WebRequest temp = WebRequest.Create(txtUrl.Text.Trim());
WebResponse myTemp = temp.GetResponse();
sr = new StreamReader(myTemp.GetResponseStream(), code);
// 读取
try
{
sr = new StreamReader(myTemp.GetResponseStream(), code);
str = sr.ReadToEnd();
}
catch (Exception ex)
{
throw ex;
}
finally
{
sr.Close();
}
string fileName = DateTime.Now.ToString( " yyyyMMddHHmmss " ) + " .htm " ;
// 写入
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文件夹下! " );
}
}
}
模板文件代码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$ 生成静态页的Demo |- 51aspx.com </ title >
< 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 >
</ body >
</ html >
< html xmlns = " http://www.w3.org/1999/xhtml " >
< head >
< title > $title$ 生成静态页的Demo |- 51aspx.com </ title >
< 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 >
</ body >
</ html >
代码打包地址:http://download1.youkuaiyun.com/down3/20070520/20160402161.rar
Trackback: http://tb.blog.youkuaiyun.com/TrackBack.aspx?PostId=1617897