html转aspx在线,将.aspx转换为.htm的两种方法

方法一:根据模板生成,保持在html文件夹中思路分析:

1.写一个自定义的HTM模板  其中需要替换的地方用$value$这样

包含起来

2.生成页面的ASPX中,用StreamReader读取HTM模板,用REPLACE

替换$value$

3.把完成的字符串用StreamWriter输出

参考代码如下:

1)定义模板emplate.htm

$title$ 生成静态页的Demo|-51aspx.com
$title$

内容:$content$

版权所有

2)在Default.aspx页面的按扭的事件处理中写如下代码:

//源码是替换掉模板中的特征字符

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{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("恭喜" + fileName + "已经生成,保存在htm文件夹下!");

}

方法二:根据Url地址生成静态页保持思路分析:

直接将做好的动态页面翻译成静态页面,所以生成的内容不够灵活

参考代码:

//根据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("恭喜" + fileName + "已经生成,保存在htm文件夹下!");

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值