ASP.Net生成静态HTML页
浏览:37日期:2023-04-03
;;环境:Microsoft;.NET;Framework;SDK;v1.1;OS:Windows;Server;2003;中文版;ASP.Net生成静态HTML页;在Asp中实现的生成静态页用到的FileSystemObject对象!;在.Net中涉及此类操作的是System.IO;以下是程序代码;注:此代码非原创!参考别人代码;//生成HTML页;public;static;bool;WriteFile(string;strText,string;strContent,string;strAuthor);{;string;path;=;HttpContext.Current.Server.MapPath("/news/");;Encoding;code;=;Encoding.GetEncoding("gb2312");;//;读取模板文件;string;temp;=;HttpContext.Current.Server.MapPath("/news/text.html");;StreamReader;sr=null;;StreamWriter;sw=null;;string;str="";;try;{;sr;=;new;StreamReader(temp,;code);;str;=;sr.ReadToEnd();;//;读取文件;};catch(Exception;exp);{;HttpContext.Current.Response.Write(exp.Message);;HttpContext.Current.Response.End();;sr.Close();;};string;htmlfilename=DateTime.Now.ToString("yyyyMMddHHmmss")+".html";;//;替换内容;//;这时,模板文件已经读入到名称为str的变量中了;str;=str.Replace("ShowArticle",strText);;//模板页中的ShowArticle;str;=;str.Replace("biaoti",strText);;str;=;str.Replace("content",strContent);;str;=;str.Replace("author",strAuthor);;//;写文件;try;{;sw;=;new;StreamWriter(path;+;htmlfilename;,;false,;code);;sw.Write(str);;sw.Flush();;};catch(Exception;ex);{;HttpContext.Current.Response.Write(ex.Message);;HttpContext.Current.Response.End();;};finally;{;sw.Close();;};return;true;;此函数放在Conn.CS基类中了;在添加新闻的代码中引用;注:工程名为Hover;if(Hover.Conn.WriteFilethis.Title.Text.ToString),this.Content.Text.ToString),this.Author.Text.ToString)));{;Response.Write("添加成功");;};else;{;Response.Write("生成HTML出错!");;};-------------------------------------------------------------------------;模板页Text.html代码;-------------------------------------------------------------------------;<!DOCTYPE;HTML;PUBLIC;"-//W3C//DTD;HTML;4.0;Transitional//EN";>;<HTML>;<HEAD>;<title>ShowArticle</title>;<body>;biaoti;<br>;content<br>;author;</body>;</HTML>;;;;------------------------------------------------------------------------;提示添加成功后会出以当前时间为文件名的html文件!上面只是把传递过来的几个参数直接写入了HTML文件中,在实际应用中需要先添加数据库,然后再写入HTML文件;而且需要把生成的文件名等写入数库以便以后调用等,此实例只是实现了根据提交过来参数替换模板中的相应的字段!;需要完善的地方很多!哪位有高见,欢迎赐教!;
相关文章: