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="
    "
    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)'以拥护提交内容替换
      tmpdata=replace(tmpdata,"",content)
      tempelatefile=server.MapPath("tempelate/1.htm")'模版文件
      save_file()
      %>



上一篇: ASP中将access数据库的数据导出为Excel电子表格
下一篇: asp中access生成excel的标头怎么写
文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags:
相关日志:
评论: 0 | 引用: 0 | 查看次数: 1150
发表评论
昵 称:
密 码: 游客发言不需要密码.
邮 箱: 邮件地址支持Gravatar头像,邮箱地址不会公开.
网 址: 输入网址便于回访.
内 容:
验证码:
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.
字数限制 300 字 | UBB代码 开启 | [img]标签 关闭