北京网站建设多年网站建设经验,依托强大的服务优势,为您提供专业的北京网站建设服务

当前位置:首页 > 北京网站建设 > ASP生成html的方法
北京网站制作 网站建设公司 网站搭建 网站制作公司 企业建站 网站设计公司 网站开发 网站设计 北京网站设计 网页设计公司 常见问题 高端网站建设 企业网站建设 品牌网站建设 网页设计模板 网页设计与制作 网站建设多少钱 网站设计与制作 网站建设费用 做网站 做网站公司 高端网站设计 网站建设方案 网站建设制作 北京网站建设 网站建设知识 网站建设优化 网站建设空间 网站建设备案

ASP生成html的方法

作者:鹏飞网络   时间:2011-10-14   分类:北京网站建设

现在已经有很多生成html的新闻系统,但是都是用的模板,本函数实现把asp页面产生的html代码保存成为一个html文件,这样就没有必要改动原来的页面就可以轻松完成一个生成html的新闻系统了。下面是北京网站建设专家-北京鹏飞网络提供的代码:

<%
‘当目标页面的包含文件即#include的页面里边存在response.End()的时候本程序有问题
‘注意:本文件一定要放在20041227111723.htm指向的文件的同一目录下
dim hughchiu_rtcode
Function get_exe_code(20041227111723.htm)
dim execode
dim tmp_str
Dim re,re1,content,fso,f,aspStart,aspEnd
dim ms,m
execode = “”
set fso=CreateObject(“Scripting.FileSystemObject”)
set f=fso.OpenTextFile(server.mappath(20041227111723.htm))
content=f.ReadAll
f.close
set f=nothing
set fso=nothing

set re = new regexp
re.ignorecase = true
re.global = true
re.pattern = “<%@[^%]+%>”
content = re.replace(content,”")

re.global = false
re.pattern = “<!--s*#includes*files*=s*”"([^""]+)”"s*-->”
do
set ms = re.execute(content)
if ms.count<>0 then
set m = ms(0)
tmp_str = get_exe_code(m.submatches(0))
content = re.replace(content, tmp_str)
else
exit do
end if
loop
set m = nothing
set ms = nothing

re.pattern=”^s*=”
aspEnd=1
aspStart=inStr(aspEnd,content,”<%”)+2

set re1=new RegExp
re1.ignorecase = true
re1.global = false
re1.pattern = “response.Write(.+)”

do while aspStart>aspEnd+1
execode = execode&vbcrlf&” hughchiu_rtcode = hughchiu_rtcode&”"”&replace( replace(Mid(content,aspEnd,aspStart-aspEnd-2),”"”",”"”"”"), vbcrlf, “”"&vbcrlf&”"”)&”"”"&vbcrlf
aspEnd=inStr(aspStart,content,”%>”)+2
tmp_str = Mid(content,aspStart,aspEnd-aspStart-2)

do
set ms = re1.execute(tmp_str)
if ms.count<>0 then
set m = ms(0)
tmp_str = re1.replace(tmp_str, ” hughchiu_rtcode = hughchiu_rtcode&”&m.submatches(0))
else
exit do
end if
loop

set m = nothing
set ms = nothing

execode = execode& re.replace(tmp_str,”hughchiu_rtcode = hughchiu_rtcode&”)

aspStart=inStr(aspEnd,content,”<%”)+2
loop

set re1 = nothing
set re=nothing

execode = execode&vbcrlf&” hughchiu_rtcode = hughchiu_rtcode&”"”&replace( replace(Mid(content,aspEnd), “”"”, “”"”"”), vbcrlf, “”"&vbcrlf&”"” )&”"”"&vbcrlf
get_exe_code = “<%”&execode&”%>”
End Function

function asp2html(20041227111723.htm)
dim code
code = replace( replace( replace( get_exe_code(20041227111723.htm), “hughchiu_rtcode = hughchiu_rtcode&”"”"”&vbcrlf, “” ), “<%”, “” ), “%>”, “” )
‘response.Write(code)
execute(code)
‘response.Write( hughchiu_rtcode )
asp2html = hughchiu_rtcode
end function
%>

使用范例:
  set fso=CreateObject(“Scripting.FileSystemObject”)
  set f=fso.CreateTextFile( server.mappath( “youpage.htm” ), true )
  f.WriteLine( asp2html(“youpage.asp”) )
  f.close
  set f = nothing
  set fso = nothing