ASP与SQL网站数据库程序设计Chap13

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

13Server对象与其他对象的整合、应用13-1FSO文件对象组件13-2文本文件的读取与写入13-3CDO对象ASP与SQL网站数据库程序设计37413-1FSO文件对象组件ASP的FileSystemObject对象可以对网页提供非常完善的文本文件的处理,但是这些文本文件的操作仅限于服务器端的文件处理,而不是指客户端的文件或文件夹。13-1-1FileSystemObject对象的基础FSO是FileSystemObject对象模式的简称,这是一个ASP的外部对象。同时,只要用户的ASP是2.0以上的版本,在ASP编译器安装的过程中,都会自动安装此对象。FSO对象提供“取得服务器端的驱动器相关信息”、“在服务器端创建、移动、更改或者删除文件夹”,“文本文件内容的读取、写入或者创建”。以目前的FSO版本而言,仅支持文本文件的读写,但是无法存取二进制的文件(例如图文件、执行文件、压缩文件等),FSO对象模式内含的对象,如表13-1所示。表13-1FSO对象模式的内含对象说明对象名称功能简述FileSystemObjectFileSystemObject对象模式的主对象,如果想处理服务器的驱动器、文件夹和文件,或是取得相关信息,请创建此对象Drive驱动器对象,其属性和方法主要是取得驱动器信息,此处的驱动器不只是硬盘,CD-ROM光驱、RAM磁盘都可以Folder文件夹对象,其属性和方法是取得文件夹信息,或是创建、删除和移动文件夹File文件对象,其属性和方法能够取得文件信息和处理文件的移动、创建或删除文件TextStream文字数据流对象,此对象用来读写文本文件依据上述的各项FSO对象模式的说明,接着笔者以实例来说明如何创建FSO对象。程序代码如下所示:第13章Server对象与其他对象的整合、应用375Dim对象名称Set对象名称=Server.CreateObject(Scripting.FileSystemObject)例如:定义一个名为“ObjFSO”的对象,在VBScript中,其程序代码如下所示:DimObjFSOSetObjFSO=Server.CreateObject(Scripting.FileSystemObject)在执行上述程序代码之后,ASP编译器将会创建一个名为ObjFSO的FileSystemObject对象。此时,FSO对象模式即具有取得服务器驱动器信息的Drive对象,创建、删除以及移动文件夹的Folder对象、文字处理的File对象。在一般的使用习惯上,在ASP程序中使用FSO对象的情况下,大多使用文本文件的读写处理方面。有关File与TextStream对象的使用部分,在稍候的章节中将会详细叙述,在本节和下一节主要说明File和TextStream对象的使用。13-1-2创建文本文件在创建文本文件之前,必须先请您参考FSO对象提供了哪些关于文本文件操作的方法,这些方法如表13-2所示。表13-2FSO对象提供的关于文本文件的操作方法对象名称功能简述CopyFile一个或多个文件的复制CreateTextFile创建指定的文件名并返回一个TextStream对象,可以使用这个对象对文件进行读写FileExists检查文件是否存在OpenTextFile打开一个已经存在的文件,供ASP程序读写或追加根据上述FSO对象的方法所述,在创建文本文件的应用上,可以使用CreateTextFile方法创建一个文本文件。下列所述的程序代码即为CreateText方法的范例:SetObjTextStream=ObjFSO.CreateTextFile(fileName,[overwrite[,unicode]])语法说明ObjTextStream:创建一个“ObjTextStream”数据流的对象名称。ASP与SQL网站数据库程序设计376ObjFSO:前面小节中所创建的FSO对象名称。filename:所要创建文件的完整路径与名称。overwrite:是否允许覆盖已有文件;True表示允许覆盖原有的文件,False表示不允许覆盖原有的文件;系统默认值为False。unicode:指定文件是否以Unicode或ASCII文件格式创建,如果文件以Unicode格式创建,则值为True,如果以ASCII格式创建,则值为False,系统默认是ASCII格式。在了解了FSO对象的方法之后,接着笔者以实例说明如何创建文本文件。程序范例:Ch13-1.asp在ASP程序中,使用FSO对象在执行的目录下创建文本文件TextFile.txt,如图13-1、图13-2、图13-3所示。图13-1范例执行前的目录内容图13-2范例程序执行的结果图13-3范例程序执行后目录的变化上述三个图中,分别显示了执行EX13-01.asp前后程序所在目录文件的变化情况。第13章Server对象与其他对象的整合、应用377程序内容01:!--EX13-01.aspFSO对象创建文本文件范例--02:HTML03:HEAD04:METANAME=GENERATORContent=MicrosoftVisualStudio6.005:TITLEEX13-01.aspFSO对象创建文本文件范例/TITLE06:/HEAD07:BODY08:%09:DimLocation,PathInfo10:Dimfso11:ForI=1ToLen(Request.ServerVariables(PATH_TRANSLATED))12:IfMid(Request.ServerVariables(PATH_TRANSLATED),I,1)=\Then13:Location=I14:Endif15:Next16:PathInfo=Mid(Request.ServerVariables(PATH_TRANSLATED),1,Location)17:filename=PathInfo&TextFile1.txt18:Setfso=CreateObject(Scripting.FileSystemObject)19:fso.CreateTextFile(filename)20:Response.Write(文件路径与名称:BR&filename&br)21:Setfso=Nothing22:%23:/BODY24:/HTML程序说明第11~15行:利用Request.ServerVariables(PATH_TRANSLATED),取出目前执行程序所在的实际路径及文件名称,并且逐字地检查是否为目录符号“\”。如果是“\”符号时,则记录目录符号所在的I值。ASP与SQL网站数据库程序设计378第16行:使用Mid函数,取出从执行程序所在的目录结构开始,到I值的文字内容,做为文件存放的路径。第17行:设置文件的实际存放路径以及文件名称。第18行:使用Server.CreateObject创建FSO对象模式。第19行:使用FSO对象的CreateTextFile方法创建文本文件TextFile.txt。第21行:释放创建的对象。13-1-3检查文件是否存在如果用户希望创建文件前可以知道目标路径下是否存在相同的文件,需根据下列的语法进行文件是否存在的检查:布尔代数=FSO.FileExists(filename)语法说明FSO.FileExists:使用FSO模型的FileExists方法。filename:文件的完整路径及文件名称。布尔值:如果指定的文件存在,将返回True;反之,则返回False。程序范例:EX13-2.asp检查在范例程序执行的目录下,文件TextFile1.Txt是否存在。图13-4目标路径下已经有相同名称的文件存在第13章Server对象与其他对象的整合、应用379图13-5目标路径下,没有这个文件存在两个具有不同结果的范例,所使用的程序如下所示:程序内容01:!--EX13-02.aspFSO对象-检查文件是否存在--02:HTML03:HEAD04:METANAME=GENERATORContent=MicrosoftVisualStudio6.005:TITLEEX13-02.aspFSO对象-检查文件是否存在/TITLE06:/HEAD07:BODY08:%09:DimLocation,PathInfo10:Dimfso11:ForI=1ToLen(Request.ServerVariables(PATH_TRANSLATED))12:IfMid(Request.ServerVariables(PATH_TRANSLATED),I,1)=\Then13:Location=I14:Endif15:Next16:PathInfo=Mid(Request.ServerVariables(PATH_TRANSLATED),ASP与SQL网站数据库程序设计3801,Location)17:filename=PathInfo&TextFile2.txt18:Setfso=CreateObject(Scripting.FileSystemObject)19:Response.Write(文件路径与名称:BR&filename&brB)20:Iffso.FileExists(filename)Then21:Response.Write检查结果:文件已经存在!22:Else23:Response.Write检查结果:文件不存在!24:EndIf25:Setfso=Nothing26:%27:/B28:/BODY29:/HTML程序说明第18行:使用Server.CreateObject方法,创建FSO对象模式。第20~24行:使用“If…Then…Else”条件语句,利用FSO模型的FileExists方法检查文件是否存在并返回结果。13-1-4删除文件在FSO对象模式中,也提供了删除文件(DeleteFile)的方法;以下是DeleteFile的语法:fso.DeleteFile(filename)语法说明fso.DeleteFile:执行FSO对象模式的DeleteFile方法。filename:文件的完整路径及名称。程序范例:Ch13-3.asp使用ASP程序,将先前范例程序所创建的TextFile1.txt删除,执行结果如图13-6所示。第13章Server对象与其他对象的整合、应用381图13-6范例程序执行的结果由图13-7中可以得知先前范例程序所创建的TextFile.txt已经被删除。图13-7删除文件后,范例程序目录下的实际情况程序内容01:!--EX13-03.aspFSO对象-删除文件--02:HTML03:HEAD04:METANAME=GENERATORContent=MicrosoftVisualStudio6.005:TITLEEX13-03.aspFSO对象-删除文件/TITLE06:/HEAD07:BODY08:%ASP与SQL网站数据库程序设计38209:DimLocation,PathInfo10:Dimfso11:ForI=1ToLen(Request.ServerVariables(PATH_TRANSLATED))12:IfMid(Request.ServerVariables(PATH_TRANSLATED),I,1)=\Then13:Location=I14:Endif15:Next16:PathInfo=Mid(Request.ServerVariables(PATH_TRANSLATED),1,Location)17:filename=PathInfo&TextFile1.txt18:Setfso=Server.CreateObject(Scripting.FileSystemObject)19:20:Response.Write

1 / 39
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功