如何將ASP網站生成靜態html頁面?相信還是有很多小伙伴們不知道這個技巧的,那么現在我們就跟隨錯新小編一起去學習學習吧,希望對你學習asp有所幫助。
生成HTML方法主要步驟只有兩個:?
一、獲取要生成的html文件的內容?
二、將獲取的html文件內容保存為html文件?
我在這里主要說明的只是第一步:如何獲取要生成的html文件的內容:?
目前常用獲取html文件的內容的方法有以下幾種:?
1、?
str="<html標記>內容</html標記>"?
str=str&"<html標記>內容</html標記><html標記>數據庫讀取內容....</html標記>....."?
這種方法與是在腳本內寫要生成的html內容,不太方便預覽生成頁面的內容,無法可視化布局頁面,更改html模板時會更加復雜。?
用這種方法的人很多,但我感覺這種方法是最不方便的。?
2、?制作單獨的HTML模板頁,動態的內容用特定的字符作為標記(如:有人用$title$標記為網頁標題),用ADODB.Stream或者Scripting.FileSystemObject將其模板內容載入,然后再用替換方法把原先定好的標記替換為動態內容
如:
Replace(載入的模板內容,"$title$",rs("title"?)?)??
3、?用XMLHTTP或serverXMLHTTP獲取動態頁所顯示的HTML內容,?
我常用的生成html文件的實例:?
‘-----------------翟振愷(小琦)?
‘weburl是要獲取的動態頁地址?
‘getHTTPPage(weburl)是獲取動態頁內容的函數?
weburl="http://"&Request.ServerVariables("SERVER_NAME")&"/contact.asp?id="&rs("id")&""‘指定動態頁地址?
body=getHTTPPage(weburl)‘用函數取到動態頁地址的內容?
‘-----------------翟振愷(小琦)?
此方法最大的好處就是不用費力氣專門去寫靜態的模板頁面,只是將原來就有的動態頁面轉換為HTML靜態頁面,但生成速度不是太快。?
我常用的生成HTML的方法就是第3種:用XMLHTTP獲取動態頁生成的HTML內容,再用ADODB.Stream或者Scripting.FileSystemObject保存成html文件。?
第二步是生成文件的方法:?
ASP里常用的有用ADODB.Stream生成文件和Scripting.FileSystemObject生成文件兩種?
1、?Scripting.FileSystemObject生成文件方法:?
‘-----------------翟振愷(小琦)?
Set?fso?=?CreateObject("Scripting.FileSystemObject")?
File=Server.MapPath("要生成文件路徑和文件名.htm")?
Set?txt=fso.OpenTextFile(File,8,True)?
data1="文件內容"用WriteLine方法生成文件?
txt.WriteLine?data1?
data2="文件內容"‘用Write方法生成文件?
txt.Write?data2?
txt.Close?
txt.fso?
‘-----------------翟振愷(小琦)?
2、?
‘-----------------翟振愷(小琦)?
Dim?objAdoStream?
set?objAdoStream?=?Server.createObject("ADODB.Stream")?
objAdoStream.Type?=?1?
objAdoStream.Open()?
objAdoStream.Write("文件內容")?
objAdoStream.SaveToFile?要生成文件路徑和文件名.htm,2?
objAdoStream.Close()?
以上就是將ASP網站生成靜態html頁面的技巧介紹,看完后你是否有了了解呢?如果有大家有疑問也可以留言交流。
新聞熱點
疑難解答