关闭右侧工具栏

技术支持

泰安网站开发ASP如何生成html的方法代码?

现在已经有很多生成html的新闻系统,但是都是用的模板,本函数实现把asp页面产生的html代码保存成为一个html文件,这样就没有必要改动原来的页面就可以轻松完成一个生成html的新闻系统了。下面是泰安泰山万维提供的代码:

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

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

re.global = falsere.pattern = “<!--s*#includes*files*=s*”"([^""]+)”"s*-->”doset ms = re.execute(content)if ms.count<>0 thenset m = ms(0)tmp_str = get_exe_code(m.submatches(0))content = re.replace(content, tmp_str)elseexit doend ifloopset m = nothingset ms = nothing

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

set re1=new RegExpre1.ignorecase = truere1.global = falsere1.pattern = “response.Write(.+)”

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

doset ms = re1.execute(tmp_str)if ms.count<>0 thenset m = ms(0)tmp_str = re1.replace(tmp_str, ” hughchiu_rtcode = hughchiu_rtcode&”&m.submatches(0))elseexit doend ifloop

set m = nothingset ms = nothing

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

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

set re1 = nothingset re=nothing

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

function asp2html(20041227111723.htm)dim codecode = replace( replace( replace( get_exe_code(20041227111723.htm), “hughchiu_rtcode = hughchiu_rtcode&”"”"”&vbcrlf, “” ), “<%”, “” ), “%>”, “” )‘response.Write(code)execute(code)‘response.Write( hughchiu_rtcode )asp2html = hughchiu_rtcodeend 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