ASP生成静态网页各种方法收集整理

时间:2008-02-18 19:25:00 

新闻系统、blog系统等都可能用到将动态页面生成静态页面的技巧来提高页面的访问速度,从而减轻服务器的压力,本文为大家搜集整理了ASP编程中常用的生成静态网页的方法,有使用fso的,也有使用到xmlhttp或者Adodb.Stream的。

1.使用FSO生成

<%
'使用FSO生成
Set fs = CreateObject("Scripting.FileSystemObject")
NewFile=Server.MapPath("ud03/fso.htm")
'新建一文件fso.htm,若该文件已存在,则覆盖它
Set a = fs.CreateTextFile(NewFile, True)
Response.Write"新文件已建立!"
a.close
File=Server.MapPath("ud03/fso.htm")
Set txt=fs.OpenTextFile(File,8,True) '打开成可以在结尾写入数据的文件
data1="这句话是使用WriteLine方法写入的。!<Br>"
txt.WriteLine data1
data2="这句话是使用Write方法写入的。<Br>"
txt.Write data2
txt.Close
%>

2.使用XMLHTTP生成

<%
'使用XMLHTTP生成
Set xml = Server.CreateObject("Microsoft.XMLHTTP")
'把下面的地址替换成你的首页的文件地址,一定要用http://开头的绝对路径,不能写相对路径
xml.Open "GET", "http://www.kinoko.name/ud03/", False
xml.Send 
BodyText=xml.ResponseBody
BodyText=BytesToBstr(BodyText,"gb2312")
Set xml = Nothing
Dim fso, MyFile 
Set fso = CreateObject("Scripting.FileSystemObject")
Set MyFile= fso.CreateTextFile(server.MapPath("ud03.htm"), True) '生成的html的文件名
MyFile.WriteLine(BodyText)
MyFile.Close

'使用Adodb.Stream处理二进制数据
Function BytesToBstr(strBody,CodeBase)
   dim objStream
   set objStream = Server.CreateObject("Adodb.Stream")
   objStream.Type = 1
   objStream.Mode =3
   objStream.Open
   objStream.Write strBody
   objStream.Position = 0
   objStream.Type = 2
   objStream.Charset = CodeBase
   BytesToBstr = objStream.ReadText 
   objStream.Close
   set objStream = nothing
End Function
%>

3.使用XMLHTTP批量生成

<%
'使用XMLHTTP批量生成
dim strUrl,Item_Classid,id,FileName,FilePath,Do_Url,Html_Temp
Html_Temp="<UL>"
For i=1 To 30 '需要生成的id:1到30
Html_Temp = Html_Temp&"<LI>"
Item_Classid = i
FileName = "Archives_"&Item_Classid&".htm" '生成的html文件名
FilePath = Server.MapPath("/")&"\"&FileName
Html_Temp = Html_Temp&FilePath&"</LI>"
Do_Url = "http://www.kinoko.name/ud03/index.php" 'WEB路径
Do_Url = Do_Url&"?p="&Item_Classid 'WEB路径之后的ID
strUrl = Do_Url
dim objXmlHttp
set objXmlHttp = Server.CreateObject("Microsoft.XMLHTTP")
objXmlHttp.open "GET",strUrl,false
objXmlHttp.send()
Dim binFileData
binFileData = objXmlHttp.responseBody
Dim objAdoStream
set objAdoStream = Server.CreateObject("ADODB.Stream")
objAdoStream.Type = 1
objAdoStream.Open()
objAdoStream.Write(binFileData)
objAdoStream.SaveToFile FilePath,2 
objAdoStream.Close()
Next
Html_Temp = Html_Temp&"<UL>"
%>
<%
Response.Write ( "成功生成文件:" )
Response.Write ( "<BR>" )
Response.Write Html_Temp
%>

标签:静态,静态网页,fso,xmlhttp,adodb
0
投稿

猜你喜欢

  • Oracle PL/SQL语言入门基础

    2010-07-20 13:28:00
  • 十几行的超简日历组件(兼容FF)js源码

    2010-08-08 08:49:00
  • asp脚本延时 自定义的delay函数

    2008-04-07 12:59:00
  • 用ASP和SQL语句动态的创建Access表

    2008-10-14 16:59:00
  • 像数艺术

    2010-02-08 12:33:00
  • 交互设计师的尴尬-我的强项是什么?

    2008-12-29 14:00:00
  • 两侧背景自动延伸的CSS实现方法

    2010-02-24 09:42:00
  • jQuery实现同一点击,两个不同链接,指向两个不同的iframe

    2010-06-21 10:52:00
  • 用MySQL内建复制功能来优化可用性

    2009-02-13 13:55:00
  • 从品牌网站看交互设计

    2009-08-18 12:39:00
  • sqlserver 存储过程动态参数调用实现代码

    2011-10-24 19:41:22
  • 详解MySQL 数据库优化方法

    2010-08-12 14:50:00
  • mysql创建master/slave详细步骤

    2011-05-21 15:29:00
  • 在ASP中使用SQL语句之2:用WHERE子句设置查询条件

    2009-04-21 13:03:00
  • 处理SQL Server 2000的命名实例和多实例

    2009-01-19 13:28:00
  • asp关键词屏蔽过滤函数代码

    2010-05-04 16:32:00
  • 高手进阶:网页设计中的文字运用

    2008-10-05 08:58:00
  • 如何读取一个.ini文件?

    2009-11-18 20:58:00
  • 关注前端开发流程

    2009-12-31 17:38:00
  • DreamweaverMX制作导航下拉菜单

    2010-07-02 16:29:00
  • asp之家 网络编程 m.aspxhome.com