3. ASP.NET生成静态页面的思路
(1)创建模板template.html文件,在里面定义一些特殊的字符串格式用于替换内容,如$htmlformat
(2)读取模板内容到指定对象中
(3)将特殊的字符串格式替换为你想要的内容
(4)创建新的静态页面,并将替换完标签的内容写入到文件中即可
定义html模板文件"template.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">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head>
<!--标题-->
<div>$htmlformat[0]</div>
<!--内容-->
<div>$htmlformat[1]</div>
</body>
</html>
using (StreamReader sr = new StreamReader(Server.MapPath("template.html")))
template = sr.ReadToEnd();
catch (Exception ex)
Response.Write(ex.Message);
Response.Write("<script>alert('读取文件错误.')</script>");
// 02.定义和html标记数目一致的数组并赋值
string[] format = new string[4];
format[0] = "这里是标题";
format[1] = "这里是内容";
// 03.替换html模板里的标签为实际想要的值
for (int i = 0; i < 4; i++)
template = template.Replace("$htmlformat[" + i + "]", format[i]);
// 04.生成html文件
using (StreamWriter sw = new StreamWriter(Server.MapPath("output.html"), false, Encoding.UTF8))
sw.WriteLine(template);
Response.Write("<script>alert('已生成html文件.')</script>");
catch
Response.Write("生成html文件失败.");