ASP 文件操作函数 及 生成静态html最简单的实现思路
[code]先把函数帖出来!文件 IO_Function.asp
============================================================================
<%
'====================================================================
'LoadFile(ByVal File) 加载已经有的文件,并把文件的内容生成一个字符串返回
'SaveToFile(ByVal strBody,ByVal File) 把更改的文件保存,strBody为新的字符串
'DelFile(ByVal File) 删除已有的文件
'加载已经有的文件,File为文件路径
'-------------------------------------------------------------------
Function LoadFile(ByVal File)
Dim objStream
On Error Resume Next
Set objStream = Server.CreateObject("ADODB.Stream")
If Err.Number=-2147221005 Then
Response.Write " 非常遗憾,您的主机不支持ADODB.Stream,不能使用本程序"
Err.Clear
Response.End
End If
With objStream
.Type = 2
.Mode = 3
.Open
.LoadFromFile File
If Err.Number<>0 Then
Response.Write " 文件"&File&"无法被打开,请检查是否存在!"
Err.Clear
Response.End
End If
.Charset = "GB2312"
.Position = 2
LoadFile = .ReadText
.Close
End With
Set objStream = Nothing
End Function
'-------------------------------------------------------------------
Function SaveToFile(ByVal strBody,ByVal File) '保存打开的文件,File为保存的文件路径,strBody为保存的内容
Dim objStream
On Error Resume Next
Set objStream = Server.CreateObject("ADODB.Stream")
If Err.Number=-2147221005 Then
Response.Write "<div align='center'>非常遗憾,您的主机不支持ADODB.Stream,不能使用本程序</div>"
Err.Clear
Response.End
End If
With objStream
.Type = 2
.Open
.Charset = "GB2312"
.Position = objStream.Size
.WriteText = strBody
.SaveToFile File,2
.Close
End With
Set objStream = Nothing
End Function
'-------------------------------------------------------------------
Function DelFile(ByVal File)
Dim objFilesys
On Error Resume Next
Set objFilesys=server.createobject("scripting.filesystemobject")
If objFilesys.FILEExists(File) then '如果文件存在着删除它 FILE为文件路径
objFilesys.deleteFILE File
End if
If Err.Number<>0 Then
Response.Write " 文件"&File&"无法被删除,可能文件正在被系统使用中!"
Err.Clear
Response.End
End If
Set objFilesys=nothing
End Function
%>
====================================================
生成静态方法 先做一模板
如:1.HTM
新闻 :{$news$}
内容:{$content$}
PATH=server.MapPath("1.HTM") '取绝对路径
然后用函数 HTMLSTR= LoadFile(PATH)
HTMLSTR就是1.HTM里的所有内容了
接下来 我们就把模板中要替换的内容从数据库中读出
HTMLSTR=replace(HTMLSTR,"{$news$}","数据库中的新闻")
HTMLSTR=replace(HTMLSTR,"{$content$}","数据库中的内容")
ToPath= ?你的保存绝对路径 和文件名 文件名你可以是你自己用随机函数生成或日期生成
然后调用 SaveToFile HTMLSTR,ToPath 来保存
你可以把文件名写到数据库 以便修改和删除 如果删除 就调用 DelFile 绝对路径
[/code]
页:
[1]