这篇文章主要介绍了如何将.aspx转换为.html,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。
方法一:根据模板生成,保持在html文件夹中
思路分析:
1.写一个自定义的HTM模板 其中需要替换的地方用$value$这样
包含起来
2.生成页面的ASPX中,用StreamReader读取HTM模板,用REPLACE
替换$value$
3.把完成的http://www.php.cn/wiki/57.html" target="_blank">字符串用StreamWriter输出
参考代码如下:
1)定义模板emplate.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> <a href="#" target="_blank">版权所有</a> </body> </html>
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("恭喜<a href=htm/" + fileName + " target=_blank>" + fileName + "</a>已经生成,保存在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("恭喜<a href=htm/" + fileName + " target=_blank>" + fileName + "</a>已经生成,保存在htm文件夹下!"); } }
感谢你能够认真阅读完这篇文章,希望小编分享如何将.aspx转换为.html内容对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,遇到问题就找亿速云,详细的解决方法等着你来学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。