仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 462|回复: 8
打印 上一主题 下一主题

[学习教程] ASP编程:ASP+模板天生Word、Excel、静态页

[复制链接]
海妖 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:44:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
asp是基于web的一种编程技术,可以说是cgi的一种。它可以完成以往cgi程序的所有功能,如计数器、留言簿、公告板、聊天室等等。用模板天生Excel、Word最年夜长处
Word、Excel文档款式易于把持和调剂,以往用Excel.Application来天生Excel、Word,必要写良多代码来把持排版的款式,用模版几近不受任何限定,只必要翻开word或Excel,编纂文档,选择"文件->另存为web页",便可便利的做好模板,用office天生的模板要比间接在DW中做好模板加倍切合office偏好,天生后文件款式可与原word、Excel格局99%一样,因而倡议人人用office(office97~office2003)间接来天生模板框架。
演示:http://mysheji.com/aspCreate/
次要的代码
function.asp复制内容到剪贴板代码:

<%
接待与我交换和进修
幸运的枪弹
BLOG:http://mysheji.com/blog
E-mail:zhaojiangang@gmail.com
QQ:37294812
-----------------------------------------------------------------------------
开启容错机制
onerrorresumenext
功效,检测服务器是不是撑持指定组件
Functionobject_install(strclassstring)
onerrorresumenext
object_install=false
dimxtestobj
setxtestobj=server.createobject(strclassstring)
if-2147221005Errthenobject_install=true
setxtestobj=nothing
endfunction
ifobject_install("Scripting.FileSystemobject")=falsethen
Response.Write"<divstyle=font-size:12px;color:#333;height:20px;line-height:20px;border:1pxsolid#DDCF8F;padding:6px;background:#FFFFED;font-family:verdana>对不起,您的空间不撑持FSO组件,请与办理员接洽!</div>"
Response.End
endif
ifobject_install("adodb.stream")=falsethen
Response.Write"<divstyle=font-size:12px;color:#333;height:20px;line-height:20px;border:1pxsolid#DDCF8F;padding:6px;background:#FFFFED;font-family:verdana>对不起,您的空间不撑持adodb.stream功效,请与办理员接洽!</div>"
Response.End
endif
-----------------------------------------------------------------------------
函数称号:ReadTextFile
感化:使用AdoDb.Stream工具来读取文本文件
参数:FileUrl文件绝对路径,FileCharSet:文件编码
FunctionReadFromTextFile(FileUrl,FileCharSet)函数
dimstr
setstm=server.CreateObject("adodb.stream")
stm.Type=2指定或前往的数据范例,
stm.mode=3指定翻开形式,如今为能够读写形式,相似于word的只读或锁定功效
stm.charset=FileCharSet
stm.open
stm.loadfromfileserver.MapPath(FileUrl)
str=stm.readtext
ReadFromTextFile=str
EndFunction
-----------------------------------------------------------------------------
函数称号:WriteToTextFile
感化:使用AdoDb.Stream工具来写进文本文件
subWriteToTextFile(FileUrl,Str,FileCharSet)办法
setstm=server.CreateObject("adodb.stream")
stm.Type=2
stm.mode=3
stm.charset=FileCharSet
stm.open
stm.WriteTextstr
stm.SaveToFileserver.MapPath(FileUrl),2
stm.flush
Endsub
-----------------------------------------------------------------------------
功效:主动创立文件夹
创立一级或多级目次,能够创立不存在的根目次
参数:要创立的目次称号,能够是多级
前往逻辑值,True乐成,False失利
创立目次的根目次从以后目次入手下手
FunctionCreateMultiFolder(ByValCFolder)
DimobjFSO,PhCreateFolder,CreateFolderArray,CreateFolder
Dimi,ii,CreateFolderSub,PhCreateFolderSub,BlInfo
BlInfo=False
CreateFolder=CFolder
OnErrorResumeNext
SetobjFSO=Server.CreateObject("Scripting.FileSystemObject")
IfErrThen
Err.Clear()
ExitFunction
EndIf
CreateFolder=Replace(CreateFolder,"","/")
IfLeft(CreateFolder,1)="/"Then
CreateFolder=Right(CreateFolder,Len(CreateFolder)-1)
EndIf
IfRight(CreateFolder,1)="/"Then
CreateFolder=Left(CreateFolder,Len(CreateFolder)-1)
EndIf
CreateFolderArray=Split(CreateFolder,"/")
Fori=0toUBound(CreateFolderArray)
CreateFolderSub=""
Forii=0toi
CreateFolderSub=CreateFolderSub&CreateFolderArray(ii)&"/"
Next
PhCreateFolderSub=Server.MapPath(CreateFolderSub)
IfNotobjFSO.FolderExists(PhCreateFolderSub)Then
objFSO.CreateFolder(PhCreateFolderSub)
EndIf
Next
IfErrThen
Err.Clear()
Else
BlInfo=True
EndIf
CreateMultiFolder=BlInfo
EndFunction
点击下载提醒
functiondownloadFile(strFile)
strFilename=server.MapPath(strFile)
Response.Buffer=True
Response.Clear
Sets=Server.CreateObject("ADODB.Stream")
s.Open
s.Type=1
onerrorresumenext
Setfso=Server.CreateObject("Scripting.FileSystemObject")
ifnotfso.FileExists(strFilename)then
Response.Write("<h1>Error:</h1>"&strFilename&"doesnotexist<p>")
Response.End
endif
Setf=fso.GetFile(strFilename)
intFilelength=f.size
s.LoadFromFile(strFilename)
iferrthen
Response.Write("<h1>Error:</h1>"&err.Description&"<p>")
Response.End
endif
Response.AddHeader"Content-Disposition","attachment;filename="&f.name
Response.AddHeader"Content-Length",intFilelength
Response.CharSet="UTF-8"
Response.ContentType="application/octet-stream"
Response.BinaryWrites.Read
Response.Flush
s.Close
Sets=Nothing
EndFunction
-----------------------------------------------------------------------------
IfErrThen
err.Clear
Setconn=Nothing
Response.Write"<divstyle=font-size:12px;color:#333;height:20px;line-height:20px;border:1pxsolid#DDCF8F;padding:6px;background:#FFFFED;font-family:verdana>网站非常堕落,请与办理员接洽,感谢!</div>"
Response.End
EndIf
%>天生Word文档:复制内容到剪贴板代码:

<%
创立文件
dimtemplateName,templatechar,filepath,filename,fileCharset,templateContent
templateName="template/template_word.htm"模板名字,撑持领路径,如"/moban/moban1.htm"或"temp/moban1.htm"
templatechar="gb2312"模板文本的编码
filepath="files/word/"天生文件保留的路径,以后目次请留空,其他目次,路径必需以“/”开头
filename="Doc1.doc"行将天生的文件名
CreateMultiFolder(filepath)这一句用来判别文件夹是不是存在,没有则主动创立,撑持n级目次
fileCharset="gb2312"盘算天生的文本编码
读取指定的模板内容
templateContent=ReadFromTextFile(templateName,templatechar)
以下就交给你来交换模板内容了
templateContent=replace(templateContent,"{&#36;websiteName}","蓝色幻想")
templateContent=replace(templateContent,"{&#36;userName}","幸运的枪弹")
templateContent=replace(templateContent,"{&#36;now}",Now())
其他内容......
终极挪用函数来天生文件
CallWriteToTextFile(filepath&filename,templateContent,fileCharset)
最初封闭adodb.stream工具
stm.flush
stm.Close
setstm=nothing
downloadFile(filepath&filename)
%>天生Excel文档:复制内容到剪贴板代码:

<%
创立文件
dimtemplateName,templatechar,filepath,filename,fileCharset,templateContent
templateName="template/template_excel.htm"模板名字,撑持领路径,如"/moban/moban1.htm"或"temp/moban1.htm"
templatechar="gb2312"模板文本的编码
filepath="files/excel/"天生文件保留的路径,以后目次请留空,其他目次,路径必需以“/”开头
filename="Book1.xls"行将天生的文件名
CreateMultiFolder(filepath)这一句用来判别文件夹是不是存在,没有则主动创立,撑持n级目次
fileCharset="gb2312"盘算天生的文本编码
读取指定的模板内容
templateContent=ReadFromTextFile(templateName,templatechar)
以下就交给你来交换模板内容了
templateContent=replace(templateContent,"{&#36;websiteName}","蓝色幻想")
templateContent=replace(templateContent,"{&#36;userName}","幸运的枪弹")
templateContent=replace(templateContent,"{&#36;now}",Now())
其他内容......
终极挪用函数来天生文件
CallWriteToTextFile(filepath&filename,templateContent,fileCharset)
最初封闭adodb.stream工具
stm.flush
stm.Close
setstm=nothing
downloadFile(filepath&filename)
%>天生.htm静态页面复制内容到剪贴板代码:

<%
创立文件
dimtemplateName,templatechar,filepath,filename,fileCharset,templateContent
templateName="template/template_html.htm"模板名字,撑持领路径,如"/moban/moban1.htm"或"temp/moban1.htm"
templatechar="gb2312"模板文本的编码
filepath="files/html/"天生文件保留的路径,以后目次请留空,其他目次,路径必需以“/”开头
filename="Untitled-1.htm"行将天生的文件名
CreateMultiFolder(filepath)这一句用来判别文件夹是不是存在,没有则主动创立,撑持n级目次
fileCharset="gb2312"盘算天生的文本编码
读取指定的模板内容
templateContent=ReadFromTextFile(templateName,templatechar)
以下就交给你来交换模板内容了
templateContent=replace(templateContent,"{&#36;websiteName}","蓝色幻想")
templateContent=replace(templateContent,"{&#36;userName}","幸运的枪弹")
templateContent=replace(templateContent,"{&#36;now}",now())
其他内容......
终极挪用函数来天生文件
CallWriteToTextFile(filepath&filename,templateContent,fileCharset)
最初封闭adodb.stream工具
stm.flush
stm.Close
setstm=nothing
response.Write("祝贺您,"&filename&"已天生,<ahref="""&filepath&filename&"""target=""_blank"">点击检察</a>")
%>楼上说交互性不好,太牵强了吧。在微软提供的一套框架中,利用asp做网站,开发效率高,使用人数少,减少不必要的开销。交互性是互动方式,是有开发人员决定的。
分手快乐 该用户已被删除
沙发
发表于 2015-1-19 21:50:45 | 只看该作者
ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码,能产生和执行动态、交互式、高效率的站占服务器的应用程序。
金色的骷髅 该用户已被删除
板凳
发表于 2015-1-27 20:52:52 | 只看该作者
ASP的语言不仅仅只是命令格式差不多,而是包含在<%%>之内的命令完全就是VB语法。虽然ASP也是做为单独的一个技术来提出的,但他就是完全继承了VB所有的功能。
admin 该用户已被删除
地板
发表于 2015-2-5 10:48:09 | 只看该作者
那么,ASP.Net有哪些改进呢?
只想知道 该用户已被删除
5#
发表于 2015-2-11 09:26:27 | 只看该作者
运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写,使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行。
飘飘悠悠 该用户已被删除
6#
发表于 2015-3-2 08:49:59 | 只看该作者
运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写,使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行。
活着的死人 该用户已被删除
7#
发表于 2015-3-11 02:51:04 | 只看该作者
我想问如何掌握学习节奏(先学什么再学什么)最好详细点?
爱飞 该用户已被删除
8#
发表于 2015-3-17 19:10:35 | 只看该作者
以上是语言本身的弱点,在功能方面ASP同样存在问题,第一是功能太弱,一些底层操作只能通过组件来完成,在这点上是远远比不上PHP/JSP,其次就是缺乏完善的纠错/调试功能,这点上ASP/PHP/JSP差不多。
山那边是海 该用户已被删除
9#
发表于 2015-3-24 21:25:20 | 只看该作者
多看多学多思。多看一些关于ASP的书籍,一方面可以扩展知识面一方面可以鉴借别人是如何掌握、运用ASP的;多学善于关注别人,向同学老师多多学习,不论知识的大小;多思则是要将学到的知识灵活运用。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-24 01:16

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表