北京網(wǎng)站建設(shè)多年網(wǎng)站建設(shè)經(jīng)驗,依托強大的服務(wù)優(yōu)勢,為您提供專業(yè)的北京網(wǎng)站建設(shè)服務(wù)

當(dāng)前位置:首頁 > 北京網(wǎng)站建設(shè) > ASP生成html的方法
北京網(wǎng)站制作 網(wǎng)站建設(shè)公司 網(wǎng)站搭建 網(wǎng)站制作公司 企業(yè)建站 網(wǎng)站設(shè)計公司 網(wǎng)站開發(fā) 網(wǎng)站設(shè)計 北京網(wǎng)站設(shè)計 網(wǎng)頁設(shè)計公司 常見問題 高端網(wǎng)站建設(shè) 企業(yè)網(wǎng)站建設(shè) 品牌網(wǎng)站建設(shè) 網(wǎng)頁設(shè)計模板 網(wǎng)頁設(shè)計與制作 網(wǎng)站建設(shè)多少錢 網(wǎng)站設(shè)計與制作 網(wǎng)站建設(shè)費用 做網(wǎng)站 做網(wǎng)站公司 高端網(wǎng)站設(shè)計 網(wǎng)站建設(shè)方案 網(wǎng)站建設(shè)制作 北京網(wǎng)站建設(shè) 網(wǎng)站建設(shè)知識 網(wǎng)站建設(shè)優(yōu)化 網(wǎng)站建設(shè)空間 建設(shè)網(wǎng)站 制作網(wǎng)站 設(shè)計網(wǎng)站 開發(fā)網(wǎng)站 網(wǎng)站建設(shè)開發(fā) 網(wǎng)站開發(fā)公司 網(wǎng)頁制作 搭建網(wǎng)站 網(wǎng)站設(shè)計制作 網(wǎng)站設(shè)計費用 企業(yè)網(wǎng)站設(shè)計 公司網(wǎng)站建設(shè) 公司網(wǎng)站設(shè)計 公司網(wǎng)站制作 企業(yè)做網(wǎng)站 網(wǎng)站設(shè)計與開發(fā) 網(wǎng)站建設(shè)備案

ASP生成html的方法

作者:鵬飛網(wǎng)絡(luò)   時間:2011-10-14   分類:北京網(wǎng)站建設(shè)

現(xiàn)在已經(jīng)有很多生成html的新聞系統(tǒng),但是都是用的模板,本函數(shù)實現(xiàn)把asp頁面產(chǎn)生的html代碼保存成為一個html文件,這樣就沒有必要改動原來的頁面就可以輕松完成一個生成html的新聞系統(tǒng)了。下面是北京網(wǎng)站建設(shè)專家-北京鵬飛網(wǎng)絡(luò)提供的代碼:

<%
‘當(dāng)目標(biāo)頁面的包含文件即#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