|
ASP Crazy 模版操作类 最简单的模板类需要的朋友可以参考下。
文件名:Awa_temp.Class.asp 复制代码 代码如下: <% 'Crazy蛙!模板操作类
'作者Crazy~蛙! QQ:379969387 欢迎交流 '版本V1.0; Class AwaTemp Public aa Private FSO,StrTemp,FileData,GetDatas,StrHtmlName,htmlwrite,StrLabel,StrLValues '=========================================== '构造函数_初始化FSO组件 '=========================================== Private Sub Class_Initialize() Set FSO=Server.CreateObject("Scripting.FileSystemObject") End Sub '=========================================== '构析函数_销毁FSO组件 '=========================================== Private Sub Class_terminate() Set FSO=nothing End Sub '=========================================== '类属性 '=========================================== '版本信息 Public Property Get Version Version="Crazy~蛙! 模板操作类!V1.0版本;" End Property '获取模板地址以及名称 Public Property Let Temp(ByVal Values) StrTemp=Values End Property '获取生成文件的文件名 Public Property Let HtmlName(ByVal Values) StrHtmlName=Values End Property '获取标签 Public Property Let Label(ByVal Values) StrLabel=Values End Property '获取将标签替换的值 Public Property Let LValues(ByVal Values) StrLValues=Values End Property '=========================================== '类方法 '=========================================== '检查模板设置以及是否存在 Private Function Check() If StrTemp="" Then Check="<span style='color:red;'>错误:未设置模板文件存储位置!</span>" Else If FSO.FileExists(StrTemp)=false Then Check="<span style='color:red;'>错误:指定模板不存在!</span>" Else Check=true End If End If End Function '读取模板页 Public Sub ReadTemp() If Check()<>true Then Response.Write Check() Response.End() Else Set GetDatas=FSO.OpenTextFile(Server.MapPath(StrTemp)) FileData=GetDatas.ReadAll GetDatas.Close Set GetData=nothing End If End Sub '替换内容 Public Function Rep() If StrLabel="" Then Response.Write "<span style='color:red;'>错误:未设置欲替换的标签!</span>" Response.End() End If If StrLValues="" Then Response.Write "<span style='color:red;'>错误:未设置替换标签的数据!</span>" Response.End() End If FileData=Replace(FileData,StrLabel,StrLValues) End Function '输出 Public Sub Echo() Response.Write FileData End Sub '生成静态页面 Public Sub GetHtml() If StrHtmlName="" Then Response.Write "<span style='color:red;'>错误:未设置生成Html文件存储位置以及文件名称!</span>" Response.End() End If Set htmlwrite=FSO.CreateTextFile(Server.MapPath(StrHtmlName),true) '写入网页内容 htmlwrite.WriteLine FileData htmlwrite.Close set htmlwrite=Nothing End Sub End Class %> 用法示例:
index.asp 复制代码 代码如下: <!--#include file="Awa_temp.Class.asp"--> <% Set awa=New AwaTemp With awa .Temp="temp.tpl" .ReadTemp .Label="{tl1}" .LValues="蛋疼" .Rep .Echo '.HtmlName="aa/index.html" '.GetHtml End With Set awa=nothing %> 模版
temp.tpl: 复制代码 代码如下: <!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> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>无标题文档</title> </head>
<body> <table width="200" border="1"> <tr> <td>{tl1}</td> <td>{tl2}</td> <td>{tl3}</td> </tr> <tr> <td> </td> <td> </td> <td> </td> </tr> <tr> <td> </td> <td> </td> <td> </td> </tr> </table> </body> </html>
|
|