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 >错误:未设置模板文件存储位置!< /span >"
Else
If FSO.FileExists(StrTemp)=false Then
Check="< span >错误:指定模板不存在!< /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 >错误:未设置欲替换的标签!< /span >"
Response.End()
End If
If StrLValues="" Then
Response.Write "< span >错误:未设置替换标签的数据!< /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 >错误:未设置生成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.**w*3.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 >
< 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 >