ASP Crazy 模版操作类(最简单的模板类、仅提供交流)

ASP教程 2025-08-08

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 >