Asp生成HTML

方法一: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="<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()
%>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
asp生成html源码 <% function chan_time(shijian)'转换日期时间函数 s_year=year(shijian) if len(s_year)=2 then s_year="20"&s_year s_month=month(shijian) if s_month<10 then s_month="0"&s_month s_day=day(shijian) if s_day<10 then s_day="0"&s_day s_hour=hour(shijian) if s_hour<10 then s_hour="0"&s_hour s_minute=minute(shijian) if s_minute<10 then s_minute="0"&s_minute chan_time=s_year & s_month & s_day & s_hour & s_minute end function function chan_data(shijian) '转换日期时间函数 s_year=year(shijian) if len(s_year)=2 then s_year="20"&s_year s_month=month(shijian) if s_month<10 then s_month="0"&s_month s_day=day(shijian) if s_day<10 then s_day="0"&s_day chan_data=s_year & s_month & s_day end function function chan_file(shijian)'转换日期时间函数 s_month=month(shijian) if s_month<10 then s_month="0"&s_month s_day=day(shijian) if s_day<10 then s_day="0"&s_day s_hour=hour(shijian) if s_hour<10 then s_hour="0"&s_hour s_minute=minute(shijian) if s_minute<10 then s_minute="0"&s_minute s_ss=second(shijian) if s_ss<10 then s_ss="0"&s_ss chan_file = s_month & s_day & s_hour & s_minute & s_ss end function top="<html><head><title>news</title><meta http-equiv=Content-Type content=text/html; charset=gb2312></head><body>" botom="</body></html>" msg=request.Form("msg") msg=replace(msg,vbcrlf,"") msg=replace(msg,chr(9),"") msg=replace(msg," "," ") msg=replace(msg,"\r\n","<br>") msg=replace(msg,"\n","<br>") msg=top&msg;&botom; Set fs=Server.CreateObject("Scripting.FileSystemObject") all_tree2=server.mappath("news")&"\"&chan;_data(now) if (fs.FolderExists(all_tree2)) then'判断今天的文件夹是否存在 else fs.CreateFolder(all_tree2) end if pass=chan_file(now) randomize '使用系统计时器来初始化乱数产生器 pass=rnd(pass) pass=get_pass(pass) pass=left(pass,10) file1=pass files=file1&".txt" filez=all_tree2&"\"&files; set ts = fs.createtextfile(filez,true) '写文件 for z=1 to len(msg) write_now=mid(msg,z,1) ts.write(write_now) next ' ts.writeline(all_msg) ts.close set ts=nothing '文件生成 if err.number<>0 or err then%> [removed] alert("不能完成") [removed] <%else%> [removed] alert("已完成") history.back(); [removed] <%end if Set MyFile = fs.GetFile(filez) all_tree2=server.mappath("news")&"\"&chan;_data(now) if (fs.FolderExists(all_tree2)) then else fs.CreateFolder(all_tree2) end if MyFile.name= left(MyFile.name,len(MyFile.name)-4)&".html" set MyFile=nothing set fs=nothing set fdir=nothing function get_pass(pass) pass=cstr(pass) pass=replace(pass," ","") pass=replace(pass," ","") pass=replace(pass,"-","") pass=replace(pass," ","") pass=replace(pass,":","") pass=replace(pass,".","") pass=replace(pass,"+","") pass=replace(pass,"_","") pass=replace(pass,"<","") pass=replace(pass,">","") pass=replace(pass,"!","") pass=replace(pass,"@","") pass=replace(pass,"#","") pass=replace(pass,"$","") pass=replace(pass,"%","") pass=replace(pass,"^","") pass=replace(pass,"&","") pass=replace(pass,"*","") pass=replace(pass,"(","") pass=replace(pass,")","") pass=replace(pass,"=","") pass=replace(pass,"\","") pass=replace(pass,"/","") pass=replace(pass,"|","") get_pass=pass end function %>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值