ASP生成静态页面

< %
' ==============================================
'
FileName: asptohtml.asp
'
Author: Ustonet [AT] Gmail.com
'
Function: 动态页面生成HTML静态文件,文件自动命名
'
Update: 2006.12.14
'
==============================================

' 转换日期时间函数
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

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

Public   function  htmlcode(content)
if  content <> ""   then
        content
= replace (content, " &amp; " , " & " )
        content
= replace (content, " &lt; " , " < " )
        content
= replace (content, " &gt; " , " > " )
        content
= replace (content, " &quot; " , " ' " )
        content
= replace (content, "    " , " &nbsp;&nbsp; " )
        content
= replace (content, " &lt;P&gt; " , " <br> " )
        content
= replace (content, " &lt;/P&gt; " , "" )
    
end   if
    htmlcode
= content
End Function

' Sub asptohtml(News_Title,News_Date,News_Hits,News_From,News_Content)
Public   Function  asptohtml(News_Title,News_Date,News_Hits,News_From,News_Content)
    
' // 创建文件系统对象 
     Set  fso = Server.CreateObject( " Scripting.FileSystemObject " )
    
' // 打开网页模板文件,读取模板内容 
     Set  htmlwrite = fso.OpenTextFile(Server.MapPath( " temp.html " )) 
    msg
= htmlwrite.ReadAll 
    htmlwrite.close

    msg
= Replace (msg, " $News_Title$ " ,News_Title)
    msg
= Replace (msg, " $News_Date$ " ,News_Date)
    msg
= Replace (msg, " $News_Hits$ " ,News_Hits)
    msg
= Replace (msg, " $News_From$ " ,News_From)
    msg
= Replace (msg, " $News_Content$ " ,htmlcode(News_Content))
    
    
Set  fs = Server.CreateObject( " Scripting.FileSystemObject " )
    all_tree2
= server.mappath( " int " ) & " " & 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
        
' response.Write("发生错误。")
     else
        
' response.Write("HTML文件生成完成。")
     end   if
    
    
Set  MyFile  =  fs.GetFile(filez) 
    all_tree2
= server.mappath( " int " ) & " " & 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 "
    
' //返回文件名
    asptohtml = " int/ " & chan_data( now ) & " / " & MyFile.name
    
    
set  MyFile = nothing  
    
set  fs = nothing
    
set  fdir = nothing
    
' // 释放文件系统对象 
     set  htmlwrite = Nothing  
    
set  fso = Nothing  
End Function
%
>
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值