asp html 百度,Asp生成HTML

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

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

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()

%>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值