刚进公司实习学会第一个知识就是:生成HTML页面。这个很常用。因为大多页面都要调用数据库,如果每次用户请求页面都要调用数据库,当访问人数很多时,后果可想而知。一个比较好的方法,就是将一些动态页面的执行结果生成静态的HTML页面,让访问者每次访问这些静态页面。管理员只需过一定时间更新就行。
下面是我用的一种生成基本静态页面的方法,不知道怎样,请高人多多指点。
try
{
string filename = @"生成页面存放的路径"; //一定不要漏掉@,注意路径格式,例如:D:\\web\\aaa.htm,表示生成aaa.htm并存放在D:\web文件夹下 FileStream fs;
StreamWriter sw;
fs = new FileStream(@filename, FileMode.OpenOrCreate, FileAccess.Write);
sw = new StreamWriter(fs, System.Text.Encoding.GetEncoding("GB2312")); //通过指定字符编码方式可以实现对汉字的支持,否则在用记事本打开查看会出现乱码
sw.BaseStream.Seek(0, SeekOrigin.Begin);
sw.WriteLine(" <!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN'>");
sw.WriteLine(" <html>");
sw.WriteLine(" <head>");
sw.WriteLine(" <meta http-equiv='Content-Type' content='text/html; charset=gb2312'>");
sw.WriteLine(" <title>ASP.NET动态生成的HTML页面</title>");
sw.WriteLine(" </head> ");
sw.WriteLine(" <body> ");
// sw.WriteLine()生成body部分的内容
sw.WriteLine("<h1>http://www.cnblogs.com/ruiyi1987</h1>"); sw.WriteLine(" </body>");
sw.WriteLine(" </html>");
sw.Flush();
sw.Close();
fs.Close();
}
catch
{
}
finally
{
}
|
请发表评论