作者: amasing 发表日期: 2006-08-08 12:02 |
方法一: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") '把下面的地址替换成你的首页的文件地址,一定要用http://开头的绝对路径,不能写相对路径 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=" " for i=1 to 3 html_temp = html_temp&" " item_classid = i filename = "index"&item_classid&".htm" filepath = server.mappath("/")&"/"&filename html_temp = html_temp&filepath&"" 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&" " %> <% response.write ( "成功生成文件:" ) response.write ( " " ) 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&" " 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)'以拥护提交内容替换 tmpdata=replace(tmpdata,"",content) tempelatefile=server.mappath("tempelate/1.htm")'模版文件 save_file() %> |
如何用ASP自动自成HTML
最新推荐文章于 2021-06-15 11:47:01 发布