ASP Crazy 模版操作类(最简单的模板类、仅提供交流)
2018-09-06 11:47
  文件名: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 
.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 
<html xmlns=
<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> 
文章标题:ASP Crazy 模版操作类(最简单的模板类、仅提供交流)
文章链接:http://soscw.com/essay/9722.html