欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Asp生成HTML方法大全

程序员文章站 2022-08-10 19:10:52
方法一:fsoset fs = createobject("scripting.filesystemobject")newfile=server.mappath("/asp...
方法一:fso

set fs = createobject("scripting.filesystemobject")
newfile=server.mappath("/asp/chap06/at/newfile.html")
'新建一文件/newfile.html,若该文件已存在,则覆盖它
set a = fs.createtextfile(newfile, true)
response.write"新文件已建立!"
a.close
file=server.mappath("newfile.html")
set txt=fs.opentextfile(file,8,true) '打开成可以在结尾写入数据的文件
data1="这句话是使用writeline方法写入的哦!~~"
txt.writeline data1
data2="这句话是使用write方法写入的哦!~~"
txt.write data2
txt.close

方法二:xmlhttp

<%
set xml = server.createobject("microsoft.xmlhttp")
'把下面的地址替换成你的首页的文件地址,一定要用
xml.open "get", "http://www.phpup.com", false
xml.send
bodytext=xml.responsebody
bodytext=bytestobstr(bodytext,"gb2312")
set xml = nothing
dim fso, myfile
set fso = createobject("scripting.filesystemobject")
set myfile= fso.createtextfile(server.mappath("aa.htm"), true)
myfile.writeline(bodytext)
myfile.close

其他:

1

下面的例子是将、index.asp?id=1/index.asp?id=2/index.asp?id=3/这三个动态
页面,分别生成ndex1.htm,index2.htm,index3.htm存在根目录下面:


<%
dim strurl,item_classid,id,filename,filepath,do_url,html_temp
html_temp="<ul>"
for i=1 to 3
html_temp = html_temp&"<li>"
item_classid = i
filename = "index"&item_classid&".htm"
filepath = server.mappath("/")&"\"&filename html_temp = html_temp&filepath&"</li>"
do_url = "http://"
do_url = do_url&request.servervariables("server_name")&"/main/index.asp"
do_url = do_url&"?item_classid="&item_classid


strurl = do_url
dim objxmlhttp
set objxmlhttp = server.createobject("microsoft.xmlhttp")
objxmlhttp.open "get",strurl,false
objxmlhttp.send()
dim binfiledata
binfiledata = objxmlhttp.responsebody
dim objadostream
set objadostream = server.createobject("adodb.stream")
objadostream.type = 1
objadostream.open()
objadostream.write(binfiledata)
objadostream.savetofile filepath,2
objadostream.close()

next
html_temp = html_temp&"<ul>"
%>

<%
response.write ( "成功生成文件:" )
response.write ( "<br>" )
response.write html_temp
%>

function bytestobstr(body,cset)
dim objstream
set objstream = server.createobject("adodb.stream")
objstream.type = 1
objstream.mode =3
objstream.open
objstream.write body
objstream.position = 0
objstream.type = 2
objstream.charset = cset
bytestobstr = objstream.readtext
objstream.close
set objstream = nothing
end function
%>

2

<%@language="vbscript" codepage="936"%>
<%
public tempelatefile,tmpdata
sub ofile()'打开文件,并把文件内容放到tmpdata
on error resume next
tmpdata=""
set astream=server.createobject ("adodb.stream")
astream.type=2'文件类型文本
astream.mode = 3'读写
astream.open
astream.charset = "gb2312"'字符集
astream.loadfromfile(tempelatefile)'从文件装载
assp=astream.size
if err.number<>0 then
xz=-18
response.write tempelatefile&"<br>"
err.clear
tmpdata=""
else
tmpdata=astream.readtext(assp)
end if

end sub

sub save_file()
ofile()
recfilen=server.mappath(dts)
astream.flush
astream.close
astream.type=2
astream.mode = 3
astream.open
astream.charset = "gb2312"
astream.position=0
astream.writetext tmpdata,1'写入数据到stream
astream.savetofile recfilen,2'保存到文件
end sub

function dts()'产生随机文件名
if len(month(now()))>1 then
mm=month(now())
else
mm="0"&month(now())
end if
if len(day(now()))>1 then
d=day(now())
else
d="0"&day(now())
end if
if len(hour(now()))>1 then
h=hour(now())
else
h="0"&hour(now())
end if
if len(minute(now()))>1 then
m=minute(now())
else
m="0"&minute(now())
end if
if len(second(now()))>1 then
s=second(now())
else
s="0"&second(now())
end if
randomize
upperbound=9999
lowerbound=1000
rds=int((upperbound - lowerbound + 1) * rnd + lowerbound)
dts="htm/"&year(now())&mm&d&h&m&s&rds&".htm"
end function
title=request.form("title")
content=request.form("content")
tmpdata=replace(tmpdata,"<title></title>",title)'以拥护提交内容替换
tmpdata=replace(tmpdata,"<content></content>",content)
tempelatefile=server.mappath("tempelate/1.htm")'模版文件
save_file()
%>