最近在做一个项目,需要用到ASP通过模板生成一个静态页面的功能,在网络上找了好多,但是我最后选择用这样的一种方法:完全通过了测试,我的测试环境是Windows2003SP2+DreamWeaver 8。
详见附件
js 代码
- 直接FSO读取模板文件,不存入数据库,这样修改模板才够方便.
- 程序代码<!--模板文件(template.htm)-->
- <html>
- <head>
- <title>{TITLE}</title>
- </head>
- <body>
- {CONTENT}
- </body>
- </html>
- 程序代码<!--TestTemplate.asp-->
- <%
- Dim fso,f
- Dim strTitle,strContent,strOut
- '创建文件系统对象
- Set fso=Server.CreateObject('Scripting.FileSystemObject')
- '打开网页模板文件,读取模板内容
- Set f=fso.OpenTextFile(Server.MapPath('Template.htm'))
- strOut=f.ReadAll
- f.close
- strTitle='这是生成的网页标题'
- strContent='这是生成的网页内容'
- '用真实内容替换模板中的标记
- strOut=Replace(strOut,'{TITLE}',strTitle)
- strOut=Replace(strOut,'{CONTENT}',strContent)
- '创建要生成的静态页
- Set f=fso.CreateTextFile(Server.MapPath('New.htm'),true)
- '写入网页内容
- f.WriteLine strOut
- f.close
- Response.Write '生成静态页成功!'
- '释放文件系统对象
- set f=Nothing
- set fso=Nothing
- %>
其他的扩展就在于个人的需求了!