把动态的aspx页转为htm [转]
在网上看到一些把动态的aspx页转为htm的程序,有简单也有复杂的。
自己修改一个简单的,拿出来。
很多人说这个简单的没什么实用价值,其实每个事物的存在都有他的价值,程序也不例外。
比如你开发个新闻系统,当管理员添加个新闻,.aspx?overredid=20050719
然后在s端生成overred20050719.htm,让访问者直接访问这个htm,这样速度应该会快(不需要访问数据库),而且安全性也会高。(id没拉)
缺点:.......
代码:private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
//string url=System.DateTime.Now.ToString()+".htm";
string s=System.DateTime.Now.ToString();
string ss=s.Replace(":","").Replace(" ","");
//Response.Write(ss);
transHtml("into.aspx",ss+"dd.htm");
//Response.Write("Has it"+System.DateTime.Today.ToString()+"");
}
public void transHtml(string path,string outpath)
System.Web.UI.Page page=new Page();
StringWriter writer = new StringWriter();
page.Server.Execute(path, writer);
FileStream fs;
if(File.Exists(page.Server.MapPath("")+"\\"+outpath))
{
File.Delete(page.Server.MapPath("")+"\\"+outpath);
}
fs=File.Create(page.Server.MapPath("")+"\\"+outpath);
byte[] bt=System.Text.Encoding.Default.GetBytes(writer.ToString());
fs.Write(bt,0,bt.Length);
fs.Close();
}
这样就把into.aspx转为以时间.htm拉
注意:你的文件夹必须有可以读写权限,
在文件夹的名时遵循文件名原则,不要带:等符号。