当前位置: 首页 > 图文教程 > 网络编程 > ASP > 根据需要动态include不同的文件

ASP
在线人数统计内幕
介绍一个制作下拉菜单完全不同的办法
server push具体实现(转)
如何完整纪录站内所有网页点选次数(转)
使用ASP常见问题解答(转载)
处理Asp中的错误
微软修补其IIS软件中的又一处安全漏洞
细细品味ASP.NET (一)
细细品味ASP.NET (二)
细细品味ASP.NET (三)
ASP+与JSP之间的抉择
细细品味ASP.NET (四)
细细品味ASP.NET (五)
用asp.net和xml做的新闻更新系统(1)
用asp.net和xml做的新闻更新系统(2)
用asp.net和xml做的新闻更新系统(3)
用ASP+XML打造留言本(1)
用ASP+XML打造留言本(2)
用ASP+XML打造留言本(3)
用ASP+XML打造留言本(4)

ASP 中的 根据需要动态include不同的文件


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 144 ::
收藏到网摘: n/a

  受<! #include file="filename.asp" --> 宏限制
必须存在该文件并且会预先编译(不管前面是否加以条件)

经常有这样的要求,根据不同的需求要求include不同的文件
如各个人的不同设置,所以要求能动态include文件。

代码如下:

Function include(filename)
Dim re,content,fso,f,aspStart,aspEnd

set fso=CreateObject("Scripting.FileSystemObject")
set f=fso.OpenTextFile(server.mappath(filename))
content=f.ReadAll
f.close
set f=nothing
set fso=nothing

set re=new RegExp
re.pattern="^\s*="
aspEnd=1
aspStart=inStr(aspEnd,content,"<%")+2
do while aspStart>aspEnd+1
  Response.write Mid(content,aspEnd,aspStart-aspEnd-2)
  aspEnd=inStr(aspStart,content,"%\>")+2
  Execute(re.replace(Mid(content,aspStart,aspEnd-aspStart-2),"Response.Write "))
  aspStart=inStr(aspEnd,content,"<%")+2
loop
Response.write Mid(content,aspEnd)
set re=nothing
End Function

使用范例:

include("youinc.asp")