求救,asp.net怎么生成静态页面? 谢谢大家!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 http://www.cnblogs.com/huobazi/archive/2007/12/31/urlrewriteandhttphanderandmakestatichtmlfiles.html武眉博<活靶子.NET> Url地址重写,利用HttpHander手工编译页面并按需生成静态HTML文件 在html页里动态的地方用&htmlCode1&作记号,在生成的页里读写html页,用需要的内容代替相应的$htmlCode&标志 谢谢,我把给你的模板发出来给大家看看.//根据模板生成,保持在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文件夹下!"); } C#中如何用JS写一个回车触发button的click事件 在线等 给定的 columnmapping 与源或目标中的任意列均不匹配 把datagrid里的数据保存到另外一个表中怎么做? 关于异步委托的例子 如何获得DATAGRID中的数据,急!!!!在线等 怎么提取字符??? 请教 C#的DataSet 简单问题:怎样捕捉Asp.net中的错误 非常非常简单的问题,可是小弟我就是不会,真是郁闷。 请问下有人用C#做过条形码吗?? Winform设计界面刷新控件消失的问题 我ds.AcceptChanges()了,但是ds.GetChanges还是为不为空
武眉博<活靶子.NET>
Url地址重写,利用HttpHander手工编译页面并按需生成静态HTML文件
//根据模板生成,保持在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文件夹下!");
}