一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

ASP生成HTML-另一篇

 dinghj 2006-08-18

ASP生成HTML

首先這項(xiàng)技術(shù)的優(yōu)點(diǎn)是:(1)減輕數(shù)據(jù)庫的壓力;(2)把數(shù)據(jù)庫和頁面隔離開來
然后給大家講一下實(shí)現(xiàn)原理..

ASP生成HTML其實(shí)是使用服務(wù)器的FSO內(nèi)置對象..
其定義方法為
set fs=createobject("scripting.filesystemobject") ‘設(shè)置FSO對象  

在建立FSO對象后就可以對服務(wù)器進(jìn)行文件及文件夾管理操作...
所以在服務(wù)器新建一個網(wǎng)頁文件也是很輕松的事...


sub SaveText(FileName,Data) ‘這是一個用于寫文本文件的過程
dim fs,ts,path ‘定義變量
set fs=createobject("scripting.filesystemobject") ‘設(shè)置FSO對象
if instr(filename,":\")<>0 then ‘判斷是不是絕對路徑
path=filename
else
path=server.MapPath(FileName)
end if
set ts=fs.createtextfile(path,true) ‘創(chuàng)建文件對象
ts.writeline(data) ‘寫數(shù)據(jù)
ts.close ‘關(guān)閉對象
set ts=nothing
set fs=nothing
end sub


這是一個建立所在類型文件的子程序..
對重要語句都給了一定的注?..
功能就是向服務(wù)器的指定路徑創(chuàng)建一個文件并將數(shù)據(jù)寫進(jìn)去..
其調(diào)用方式為:
savetext "D:\chris.html","chris"
大家可以在自己的電腦上試一下..
第一個參數(shù)為Chris.html
文件內(nèi)容為chris


了解了創(chuàng)建文件的原理之后就可以對網(wǎng)站進(jìn)行批量網(wǎng)頁生成..


但是在生成以前我們必須得為生成的頁面制作一個模板...


下面我舉個例子..


Mode.asp
------------------
<body onLoad="window.focus();">
<table width="700" border="0" align="center" cellpadding="0" cellspacing="0" class="table">
<tr>
<td><br>
<table width="600" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td style="LEFT: 0px; WIDTH: 600 xp; WORD-WRAP: break-word"><p><font size="2"><%=rs("bigclass")%> -> <%=rs("smallclass")%> -> <font color="#FF9B9B"><%=rs("title")%></font></font></p>
<p><font size="2"><%response.Write(ubbcode(rs("content")))%></font></p>
<p> </p>
<p align="right"><font size="2">摘自:<%=rs("path")%>  </font></p></td>
</tr>
</table></td>
</tr>
<tr>
<td><div align="center"><font size="2"><br>
發(fā)布時(shí)間:<font color="#FF9B9B"><%=rs("time")%></font>  瀏覽次數(shù):<font color="#FF9B9B"><%=rs("browse")%></font></font></div></td>
</tr>
<tr>
<td> </td>
</tr>
</table>
</body>

這是一個模板文件....


下面要做的操作就是制作一個生成頁面...


這個生成頁面要做的工作是將Mode.asp的文件內(nèi)容讀出.然后將其需要動態(tài)替換的地方替換成需要的內(nèi)容..


set fso=server.CreateObject("scripting.filesystemobject") ‘創(chuàng)建一個FSO對象
set myfile=fso.getfile(filepath) ‘設(shè)置一個文件對象..filepath就是這個模板文件的名稱
set ts=myfile.openastextstream ‘設(shè)置一個文本對象..并打開這個對象...
if not ts.atendofstream then content=changecontent(ts.readline)
do while not ts.atendofstream
content=content+vbcrlf
content=content+changecontent(ts.readline)
loop

將模板文件的內(nèi)容賦值到content變量里...


再對其模板內(nèi)容處理后生成新的網(wǎng)頁文件...


例如
Replace(content,"<%=rs("title")%"&">",title)
將模板文件的<%=Rs("title")%>替換為文章標(biāo)題...

其他的Content,Time,Browse以此類推...


Content進(jìn)行處理后就是一個完整的網(wǎng)頁文件..
將其輸出就完成了網(wǎng)頁的生成..
sub SaveText(FileName,Data) ‘這是一個用于寫文本文件的過程
dim fs,ts,path ‘定義變量
set fs=createobject("scripting.filesystemobject") ‘設(shè)置FSO對象
if instr(filename,":\")<>0 then ‘判斷是不是絕對路徑
path=filename
else
path=server.MapPath(FileName)
end if
set ts=fs.createtextfile(path,true) ‘創(chuàng)建文件對象
ts.writeline(data) ‘寫數(shù)據(jù)
ts.close ‘關(guān)閉對象
set ts=nothing
set fs=nothing
end sub

savetext CreateFileName,Content ‘調(diào)用寫文件子程序

使用模板自動生成原理基本上就是這樣...
主要問題在于大家使用過程中的一些細(xì)節(jié)問題的注意...
一會兒我會讓大家看一個比較成熟的FSO的展示程序...


set myfile=fso.getfile(uta(filepath))
----------------------
在FSO對象的基礎(chǔ)上建立一個文件對象...


myfile=你指定的那個文件..


if not ts.atendofstream then content=changecontent(ts.readline) ‘判斷文件是否為空.如果不為空才進(jìn)行賦值操作
do while not ts.atendofstream ‘AtEndOfStream判斷是不是文件的末尾
content=content+vbcrlf
content=content+changecontent(ts.readline)
loop


FSO對象的屬性和方法比較多...如果大家感興趣可以參考一下VBS參考手冊..
我在這里只是起一個引導(dǎo)作用...給大家講解一下成生網(wǎng)頁文件..

content=content+vbcrlf
content=content+changecontent(ts.readline)
是做什么的
------------------------------------
把文件按行讀出來...


AtEndOfStream判斷是不是文件的末尾 剛才Chris已經(jīng)講了
do while not ts.atendofstream ‘AtEndOfStream判斷是不是文件的末尾 content=content+vbcrlf
content=content+changecontent(ts.readline)
loop
的意思就是說,把文件中的一行一行讀出來


只是一個函數(shù)..
function uta(val)
uta=replace(val,"*","&")
end function


filepath是在哪里取的?


filepath就是你那個文件所在地呀

2005-07-09 15:36:19 偸米飯(44018790)
Chris
changecontent這個函數(shù)有什么用?

changecontent是一個函數(shù),可能是替換里面的一些字符
那些都是一些Replace的替換操作...
你們根據(jù)自己需要進(jìn)行處理...
不一定必須...

整體原理就是利用FSO的創(chuàng)建文件方法在服務(wù)器創(chuàng)建一個網(wǎng)頁文件..
然后把代碼寫到創(chuàng)建的文件里...就是這樣..

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    中文字幕亚洲视频一区二区| 午夜福利92在线观看| 日本二区三区在线播放| 欧美一级内射一色桃子| 婷婷色香五月综合激激情| 日本妇女高清一区二区三区| 欧洲自拍偷拍一区二区| 99久久国产精品免费| 五月天婷亚洲天婷综合网| 亚洲综合香蕉在线视频| 中日韩美一级特黄大片| 黑人粗大一区二区三区| 91播色在线免费播放| 日韩一级免费中文字幕视频| 中国一区二区三区人妻| 日韩精品中文字幕亚洲| 亚洲av在线视频一区| 国产精品亚洲精品亚洲| 不卡中文字幕在线免费看| 精品久久av一二三区| 国产精品激情在线观看| 东京不热免费观看日本| 日韩不卡一区二区三区色图| 厕所偷拍一区二区三区视频| 日本精品免费在线观看| 成人精品一区二区三区综合| 好吊妞在线免费观看视频| 热久久这里只有精品视频| 亚洲一二三四区免费视频| 人妻久久这里只有精品| 日韩午夜福利高清在线观看| 亚洲一区二区三区熟女少妇| 日韩高清一区二区三区四区| 嫩呦国产一区二区三区av| 日韩国产亚洲一区二区三区| 中文人妻精品一区二区三区四区 | 国产又猛又大又长又粗| 色婷婷视频在线精品免费观看| 日韩高清一区二区三区四区| 欧美一级特黄大片做受大屁股| 精品少妇一区二区视频|