第 10 章文件存取组件及其他组件

52
第 10 第第第第第第第第第第第第

Upload: nero

Post on 15-Jan-2016

98 views

Category:

Documents


0 download

DESCRIPTION

第 10 章文件存取组件及其他组件. 10.1. 10.2. 10.4. 10.3. 10.6. 10.5. 文件存取组件. 广告轮显组件. 文件超链接组件. 浏览器兼容组件. 本章小结. 计数器组件. 本章内容简介. 10.1 文件存取组件. 10.1.1 FileSystemObject 对象的属性和方法 10.1.2 文件及文件夹的基本操作 10.1.3 TextStream 对象的属性和方法 10.1.4 文本文件的基本操作 10.1.5 File 对象的属性和方法 10.1.6 Folder 对象的属性和方法 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 第 10 章文件存取组件及其他组件

第 10章文件存取组件及其他组件

Page 2: 第 10 章文件存取组件及其他组件

•文件存取组件 10.1

•广告轮显组件10.2

•文件超链接组件 10.4

•计数器组件 10.5

• 浏览器兼容组件 10.3

•本章小结 10.6

本章内容简介本章内容简介

Page 3: 第 10 章文件存取组件及其他组件

10.1 10.1 文件存取组件文件存取组件• 10.1.1 FileSystemObject 对象的属性和方法• 10.1.2 文件及文件夹的基本操作• 10.1.3 TextStream 对象的属性和方法• 10.1.4 文本文件的基本操作• 10.1.5 File 对象的属性和方法• 10.1.6 Folder 对象的属性和方法• 10.1.7 Drive 对象的属性

Page 4: 第 10 章文件存取组件及其他组件

文件存取组件文件存取组件 • 文件存取组件,可以实现对文本文件的存取,文

件和文件夹的复制、移动和删除等操作。• 文件存取组件包含多个对象,常用对象如 下:

• 注意:对文件和文件夹操作时,要注意权限问题。

Page 5: 第 10 章文件存取组件及其他组件

10.1.1 FileSystemObject10.1.1 FileSystemObject 对象的属性和方法对象的属性和方法

• FileSystemObject 对象– 该对象是最主要的对象,它不仅可以对文件和文件夹进

行新建、复制、移动、删除等操作。而且可以建立 TextStream 、 File 、 Folder 和 Drive 对象 .

– 该对象的语法为: Set FileSystem 对象实例 = Server.CreateObject("Scripting.FileSystemObject")

– 例如: <% Set fso=Server.CreateObject("Scripting.FileSystemObject") %>

Page 6: 第 10 章文件存取组件及其他组件

FileSystemObjectFileSystemObject 对象的属性和方对象的属性和方法法

• 属性:– 它的常用属性只有 Drives ,它用来返回硬盘上的驱动

器对象的集合。– 例如 <% Set objsA=fso.Drives %>

• 方法大致可以分为三部分,分别是关于文件、文件夹和驱动器的属性 ,如下图:

Page 7: 第 10 章文件存取组件及其他组件

10.1.2 10.1.2 文件及文件夹的基本操作文件及文件夹的基本操作• 文件和文件夹的基本操作实质上是一致的,都包括新建、复

制、移动和删除几项功能,请注意对比两者的语法。• ( 1 )文件的复制、移动和删除

– 要对文件进行复制、移动和删除,就需要用到 FileSystemObject 对象的关于文件的几个方法, CopyFile 、 MoveFile 、 DeleteFile 、 FileExists 。语法如下:

– 复制: FileSystemObject 对象实例 .CopyFile source, destination [,overwrite]

– 移动: FileSystemObject 对象实例 .MoveFile source, destination

– 删除: FileSystemObject 对象实例 .DeleteFile source [, force]

– 文件是否存在: FileSystemObject 对象实例 . FileExists (source)

Page 8: 第 10 章文件存取组件及其他组件

文件的复制、移动和删除示例文件的复制、移动和删除示例

Page 9: 第 10 章文件存取组件及其他组件

文件夹的新建、复制、移动和删除文件夹的新建、复制、移动和删除• 要对文件夹进行复制、移动和删除,就需要用到 FileSystemO

bject 的关于文件夹的几个方法, CreateFolder 、 CopyFolder 、 MoveFolder 、 DeleteFolder 、 FolderExists 。语法如下。– 新建: FileSystemObject 对象实例 . CreateFolder source– 复制: FileSystemObject 对象实例 . CopyFolder source, desti

nation [,overwrite]– 移动: FileSystemObject 对象实例 . MoveFolder source, desti

nation – 删除: FileSystemObject 对象实例 . DeleteFolder source, forc

e– 文件夹是否存在: FileSystemObject 对象实例 . FolderExists(so

urce)

Page 10: 第 10 章文件存取组件及其他组件

文件夹的新建、复制、移动和删除 示例文件夹的新建、复制、移动和删除 示例

Page 11: 第 10 章文件存取组件及其他组件

10.1.3 TextStream10.1.3 TextStream 对象的属性和方对象的属性和方法法

• TextStream 对象– TextStream 对象用于创建文本文件或者对已经存在的文本

文件进行读 / 写操作。– 新建文本文件要用 FileSystemObject 对象的 CreateTextFil

e 方法创建。语法如下:– Set TextStream 对象实例= FileSystemObject 对象实例 .

CreateTextFile (filename[,overwrite] [,unicode])– 如果要对已有的文本文件执行读取和追加操作,就要用到 Fi

leSystemObject 对象的 OpenTextFile 方法。语法如下:– Set TextStream 对象实例= FileSystemObject 对象实例 .

OpenTextFile(filename [,iomode] [, create] [, format])

Page 12: 第 10 章文件存取组件及其他组件

TextStreamTextStream 对象的属性和方法对象的属性和方法

Page 13: 第 10 章文件存取组件及其他组件

10.1.4 10.1.4 文本文件的基本操作文本文件的基本操作• 文本文件的操作主要依赖于上一节的 TextStream

对象,下面依次讲解文本文件的新建、读取和添加等操作方法。

• 其实 HTML 文件本质上也是文本文件,也可以一样操作,只要将扩展名改为 .htm 即可。

Page 14: 第 10 章文件存取组件及其他组件

(( 11 )新建文本文件)新建文本文件• 语法:

– Set FileSystem 对象实例 = Server.CreateObject("Scripting.FileSystemObject")

– Set TextStream 对象实例= FileSystem 对象实例 .CreateTextFile (filename[,overwrite]) 说明:参数 filename 是文件的物理路径。表示 Overwrite 表示允许覆盖, True 表示可以, False 表示可以,默认为 False

• 新建文件时首先要建立 TextStream 对象,然后利用上一节介绍的 Write 、 WriteLine 和 WriteBlankLine 方法向文件中写入字符串。请看具体例子。

Page 15: 第 10 章文件存取组件及其他组件

新建文本文件示例新建文本文件示例

Page 16: 第 10 章文件存取组件及其他组件

(( 22 )文本文件的读取和追加)文本文件的读取和追加• 语法:

– Set TextStream 对象= FileSystem 对象 .OpenTextFile(Filename[,Iomode,[Create]])

– 说明:Filename 指定欲打开的文件名称及其路径Iomode 指定打开的文件是只读( ForReading )方式, 1为只读; 2 为可写,覆盖所有内容; 8 为可添加。默认为 1Create 指定打开的文件不存在时,是否自行建立新文件。True 为是, False 为否,默认为 False

• 读取文件时首先也要建立 TextStream 对象,然后用 Read 、 ReadAll 和 ReadLine 方法读取即可,同时需要利用AtEndOfStream 属性判断是否已经到达文件结尾。请看具体例子。

Page 17: 第 10 章文件存取组件及其他组件

文本文件的读取和追加示例文本文件的读取和追加示例

Page 18: 第 10 章文件存取组件及其他组件

(( 33 )自动生成)自动生成 HTMLHTML 文件示例文件示例• HTML 文件本质上也是文本文件,所以也可以自动创建,只不过需要将 HTM

L 代码当作字符串写入到文件中即可。请看具体示例。

Page 19: 第 10 章文件存取组件及其他组件

10.1.5 File10.1.5 File 对象的属性和方法对象的属性和方法• File 对象又称文件对象,一个文件就是一个 File

对象。– 建立 File 对象的语法如下: Set File 对象实例 =FileSystemObject 对象实例 .GetFil

e(filename)– 其中 filename 表示文件的完整路径。

Page 20: 第 10 章文件存取组件及其他组件

FileFile 对象的属性和方法对象的属性和方法

Page 21: 第 10 章文件存取组件及其他组件

FileFile 对象的属性示例对象的属性示例

Page 22: 第 10 章文件存取组件及其他组件

10.1.6 Folder10.1.6 Folder 对象的属性和方法对象的属性和方法• Folder 对象又称文件夹对象,一个文件夹就是一

个 Folder 对象。– 建立 Folder 对象的语法如下:

Set Folder 对象实例 =FileSystemObject 对象实例 .GetFolder(foldername)

– 其中 foldername 表示文件夹的完整路径。

Page 23: 第 10 章文件存取组件及其他组件

FolderFolder 对象的属性和方法对象的属性和方法

Page 24: 第 10 章文件存取组件及其他组件

FolderFolder 对象的属性和方法示例对象的属性和方法示例

Page 25: 第 10 章文件存取组件及其他组件

10.1.7 Drive10.1.7 Drive 对象的属性对象的属性• Drive 对象又称驱动器对象,一个驱动器就

是一个 Drive 对象。建立 Drive 对象的语法如下:– Set Drive 对象实例 =FileSystemObject 对象实例 .Get

Drive(drivename)– 其中 drivename 表示驱动器名称。

Page 26: 第 10 章文件存取组件及其他组件

DriveDrive 对象的属性对象的属性

• Drive 对象的属性和 File 、 Folder 对象的属性用法基本一致,下面举一个简单的例子:– <%– Dim drv– Set drv=fso.GetDrive("C:")– Response.Write "<br> 驱动器名称: " & drv.DriveLetter– Response.Write "<br> 文件系统: " & drv.FileSystem– Response.Write "<br> 可用空间大小: " & drv.AvailableSpace– %>

Page 27: 第 10 章文件存取组件及其他组件

DriveDrive 对象的示例对象的示例• 利用 For Each 循环列出所有驱动器的名称,请看具体代码

Page 28: 第 10 章文件存取组件及其他组件

10.2 10.2 广告轮显组件广告轮显组件• 10.2.1 广告轮显组件的属性和方法• 10.2.2 使用广告轮显组件示例

Page 29: 第 10 章文件存取组件及其他组件

广告轮显组件广告轮显组件 • 利用广告轮显组件( Ad Rotate Component )

可以轻松制作交替变换的广告Web页面,每一次当用户进入该页面或者刷新该页面时,显现出来的广告信息都是不同的。

• 当然,利用其他技术也可以实现上述要求,只不过利用广告轮显组件比较简单。可以把广告信息放在一个专门的文本文件内,维护时只要修改该文件就行了,不需要修改网页源文件。

Page 30: 第 10 章文件存取组件及其他组件

10.2.1 10.2.1 广告轮显组件的属性和方法广告轮显组件的属性和方法• 广告轮显组件主要包括:

– 一个对象 AdRotator ,建立该对象的语法如下:Set AdRotator 对象实例 =Server.CreateObject("MSWC.AdRotator")

– 对象的属性和方法如下表 :

Page 31: 第 10 章文件存取组件及其他组件

10.2.2 10.2.2 使用广告轮显组件示例使用广告轮显组件示例• 要使用该组件,一般来说,需要 3个文件。

– ① 广告信息文件:记录所有广告信息的文本文件。– ② 超链接处理文件:用户单击广告图片时引导用户到相应广告网页的 ASP文件。

– ③ 显示广告图片文件:这就是放置广告图片的文件,比如个人主页首页。

– 下面依次说明。

Page 32: 第 10 章文件存取组件及其他组件

(( 11 )建立广告信息文件)建立广告信息文件• 广告信息文件用来存放每个广告的图片路径、超链接网址、广告大小与边框大小等信息,当需要增删广告信息时,只要修改该文件即可,并且该文件的名字可以任意命名。请看如下例子 : adver.txt : 广告信息文件

前 4行指定广告的处理文件和有关设置所有广告信息存放在 *符号后,每个广告信息包含4行,每行都不能省略。 广告图片出现几率计算公式 中国教育科研网: 40/(40+30+20)=4/9搜狐: 30/(40+30+20)=3/9尚网: 20/(40+30+20)=2/9

Page 33: 第 10 章文件存取组件及其他组件

(( 22 )建立超链接处理文件)建立超链接处理文件• 当用户单击广告图片时, ASP就会调用这个处理文件执行超链接的

动作。在该文件中就会获取传递过来的网址,并重定向到相应网址。最简单的超链接处理文件如下。

说明:如果要统计网页访问次数及其他信息,可以在这个程序里加一些语句,比如,可以在重定向语句之前将该广告点击次数记载在数据库里。

Page 34: 第 10 章文件存取组件及其他组件

(( 33 )建立显示广告图片文件)建立显示广告图片文件• 上面的两个文件建立好后,就可以在任意 ASP文件中使用广告轮显

组件显示广告图片。请看具体代码。

Page 35: 第 10 章文件存取组件及其他组件

10.3 10.3 浏览器兼容组件浏览器兼容组件• 10.3.1 浏览器兼容组件的工作原理• 10.3.2 浏览器兼容组件的属性• 10.3.3 使用浏览器兼容组件示例

Page 36: 第 10 章文件存取组件及其他组件

浏览器兼容组件浏览器兼容组件 • 为什么要使用浏览器兼容组件

– 由于浏览器之间的差异,当用不同的浏览器对同一网页进行浏览时,显示的效果可能不完全一样。而要解决该问题,最好的办法就是针对不同的浏览器开发不同的 Web程序。当然,要做到这一点首先就要判断客户端浏览器的类型。

– 利用浏览器兼容组件( Browser Capabilities Component )就可以轻松获取客户端浏览器类型等特性,比如是否支持框架页,是否支持背景音乐,是否支持 JavaScript 等等。

Page 37: 第 10 章文件存取组件及其他组件

10.3.1 10.3.1 浏览器兼容组件的工作原理浏览器兼容组件的工作原理• 当客户端向服务器端发出一个 HTTP请求信息后,浏览器兼容组件就

可以从这个 HTTP请求信息中提取出客户端浏览器的类型和版本等信息,然后它会将这些信息与服务器端的一个特殊文件 Browscap.ini相匹配。 Browscap.ini 一般位于“ C:\windows\system32\inetsrv”文件夹下,它是一个普通的文本文件,其中包含了各种市场上常见的浏览器的特性信息。如下图:

如果浏览器兼容组件在 Browscap.ini 中找到了相匹配的浏览器信息时,它就假定客户端浏览器特性和该文件所记录的一致;当找不到匹配信息时,它会将 Browscap.ini 中设定的默认浏览器的信息当做客户端浏览器的特性。

Page 38: 第 10 章文件存取组件及其他组件

10.3.2 10.3.2 浏览器兼容组件的属性浏览器兼容组件的属性• 浏览器兼容组件

– 主要包括一个对象 BrowserType ,建立该对象的语法如下:Set BrowserType 对象实例= Server.CreateObject(“MSWC.BrowserType”)

– 该对象的常用属性如下表 :

Page 39: 第 10 章文件存取组件及其他组件

10.3.3 10.3.3 使用浏览器兼容组件示例使用浏览器兼容组件示例• 例子,其中将输出客户端浏览器的主要特性。

Page 40: 第 10 章文件存取组件及其他组件

10.4 10.4 文件超链接组件文件超链接组件• 10.4.1 文件超链接组件的方法• 10.4.2 使用文件超链接组件示例

Page 41: 第 10 章文件存取组件及其他组件

文件超链接组件文件超链接组件• ASP提供了文件超链接组件,利用它就可以自动生成目录页,并且可以方便地给每一个文件添加“上一篇”或“下一篇”超链接。

• 要应用该组件,首先要建立一个超链接数据文件,在其中存放了每一个文件的 URL 和说明,然后在其它页面中就可以用有关方法来读取该数据文件并显示相应的内容了。当需要添加或删除一个文件时,只要修改这个超链接数据文件就可以了。

Page 42: 第 10 章文件存取组件及其他组件

10.4.1 10.4.1 文件超链接组件的方法文件超链接组件的方法• 文件超链接组件

– 主要也包括一个对象 NextLink ,建立该对象的语法如下:– Set NextLink 对象实例= Server.CreateObject("MSWC.Ne

xtLink" )– 该对象的常用方法如下表:

Page 43: 第 10 章文件存取组件及其他组件

10.4.2 10.4.2 使用文件超链接组件示例使用文件超链接组件示例• 要使用该组件,一般需要三个文件。

– 建立超链接数据文件 :关于 Web站点网址、其他文件的数据文件,是一个文本文件。

– 建立目录页文件 – 在文件中添加“上一篇”、“下一篇”的超链接

Page 44: 第 10 章文件存取组件及其他组件

(( 11 )建立超链接数据文件)建立超链接数据文件• 要使用文件超链接组件,首先要建立超链接数据文件,这是一个文本

文件,其中存放了其他文件的 URL 和说明。

Page 45: 第 10 章文件存取组件及其他组件

(( 22 )建立目录页文件)建立目录页文件• 建立超链接数据文件后,就可以在 ASP中利用 NextLink 对象读取该

文件并显示一个目录页了。请看具体代码:

Page 46: 第 10 章文件存取组件及其他组件

(( 33)添加“上一篇”、“下一篇”的超链)添加“上一篇”、“下一篇”的超链接接

• 上面只是建立了一个目录页,并没有发挥出文件超链接组件的所有功能,实际上还可以在每一个文件中添加“上一篇”和“下一篇”等超链接。请看其中的具体代码:

Page 47: 第 10 章文件存取组件及其他组件

10.5 10.5 计数器组件计数器组件• 10.5.1 计数器组件的属性和方法• 10.5.2 使用计数器组件示例

Page 48: 第 10 章文件存取组件及其他组件

计数器组件计数器组件

• ASP提供了一个专门的计数器组件。– 该组件实际上是将统计数据存放到服务器端的

一个文本文件中,但是我们并不需要关心该文件,组件会自动完成有关计数工作。

Page 49: 第 10 章文件存取组件及其他组件

10.5.1 10.5.1 计数器组件的属性和方法计数器组件的属性和方法• 计数器组件

– 主要包括一个对象 PageCounter ,建立该对象的语法如下:

– Set PageCounter 对象实例= Server.CreateObject("MSWC. PageCounter" )

– 该对象的常用方法如下表:

Page 50: 第 10 章文件存取组件及其他组件

10.5.2 10.5.2 使用计数器组件示例使用计数器组件示例• 下面看一个具体例子,其中将显示当前网页的访问次数。

Page 51: 第 10 章文件存取组件及其他组件

10.6 10.6 本章小结本章小结• 本章的重点是文件存取组件,不过该组件的对象、属

性、方法都非常多,而且功能也有重复,请大家细心体会,一定要牢固掌握文件或文件夹的基本操作、文本文件的新建、读取和追加操作。

• 对于其他组件,大家实际上用代码也可以自己实现相应的效果,不过利用这些组件编程比较简单。大家要尽量熟悉每个组件常用的属性和方法。

• 在本章中经常涉及到文件路径,其中文本存取组件一般需要使用物理路径,而其他组件通常使用相对路径或绝对路径。

Page 52: 第 10 章文件存取组件及其他组件