首页 理论教育对象型变量用于测量平差程序设计

对象型变量用于测量平差程序设计

【摘要】:FSO对象包含在一个被称为Scripting的类型库中,此库位于Scrrun.dll文件中。表1.1FSO模型对象2.FSO对象应用创立FSO对象。赋值后的对象型变量保存的是所创立对象的引用,即对象在计算机内存中的地址,也称为句柄。表1.2文件夹属性③FSO对象操作文件的方法。Dim fso As New FileSystemObject,ts As textstreamSet ts = fso.CreateTextFile上述语句功能是声明对象型变量,创建文件并赋予文本文件型变量ts。

1.文件系统对象FSO

FileSystemObject(FSO)是VB可以引用的一组用于操作驱动器、文件夹、文件的对象。FSO对象使用面向对象语法来处理驱动器、文件夹和文件。FSO对象实际上是系统所提供的类模块,其应用方法与使用类模块自定义的对象相同。使用FSO对象能够创建、改变、移动、删除文件夹,也能查询文件、文件夹有关的信息及读写文本文件,它使得文件操作变得简单易行。

FSO对象包含在一个被称为Scripting的类型库中,此库位于Scrrun.dll文件中。如还没有引用此文件,从“工程”菜单的“引用”对话框选择“Microsoft Scripting Runtime”项,然后就可使用“对象浏览器”来查看其对象、集合、属性、方法、事件以及它的常数,并引用其方法。

FSO对象包含五个功能不同的成员,分别用于创建文件夹、文件,查询驱动器、文件夹、文件信息,获取文件或文件夹内存地址,读写文本文件等功能。

FSO对象中除主项FileSystemObject外,其余的4个文件系统对象类都是具体的类型,所以需要赋值后加以引用。FileSystemObject主要用于获取具体对象的句柄,创建文件夹、文件,删除移动文件夹、文件等操作,不涉及具体的对象,所以使用时不赋值。

FSO对象成员具体信息如表1.1所示。

表1.1 FSO模型对象

2.FSO对象应用

(1)创立FSO对象。

使用文件系统对象编程,首先必须创建一个FileSystemObject对象,然后才能使用其方法、属性来管理驱动器、文件夹和文件等对象。由于FSO对象不是控件(不可视),所以创建一个FSO对象实体的方法,是将一个变量声明为FSO型对象,其方法与声明一般变量相似,例如:

Dim <变量名> As New FileSystemObject

Dim <变量名> As drive

也可以使用CreateObject方法来创建一个FileSystemObject对象,程序语法为:

Set <变量名>=CreateObject("Scripting.FileSystemObject")

其中“Scripting”是类型库名称,而“FileSystemObject”则是想要创建的对象的名称,根据实际需要选择表1.1第1列中五种类型之一。

CreateObject方法在创立FSO对象的同时,将其赋值给对象型变量。赋值后的对象型变量保存的是所创立对象的引用,即对象在计算机内存中的地址,也称为句柄。对象型变量赋值不同于普通变量的是,必须用Set关键字,而一经赋值,则对对象型变量的操作等同于对它所引用对象的操作。

(2)FSO对象应用。

①FSO对象操作驱动器的方法。

访问已有的驱动器,可使用FileSystemObject对象中相应的“Get”方法:

Dim fso As New FileSystemObject, drv As Drive

Set drv = fso.GetDrive(描述驱动器的字符串)

上述语句功能是首先声明对象型变量fso和drv,然后运用FSO方法获得指定驱动器的内存地址,并赋值给驱动器型变量drv。

FSO对象允许系统获得驱动器的各种信息,诸如:TotalSize、FreeSpace、DriveLetter、DriveType、SerialNumber、FileSystem、IsReady、ShareName/VolumeName等属性,语法为<对象名\对象性变量>.属性,例如:

<对象名>.Print drv.TotalSize

<对象名>.Print drv.FreeSpace

②FSO对象操作文件夹的方法。

A.创建、删除、移动和复制(小写fso表示一个已声明的FileSystemObject类型的变量,fld表示一个已赋值的文件夹型的变量,声明方法如前述):

fso.CreateFolder(“描述文件夹名和路径的字符串”)

fld.Delete/fso.DeleteFolder(“描述文件夹名和路径的字符串”)(www.chuimin.cn)

fld.Move(“描述目的地的字符串”)/fso.MoveFolder(“描述要移动的文件夹及目的地的字符串”)

fld.Copy/fso.CopyFolder(“描述要复制文件夹的字符串”)

B.文件夹定位:

fso.FolderExists(“描述包括路径的文件夹名的字符串或对象型变量”)

fso.GetAbsolutePathName(“文件夹名 或对象型变量”)

fso.GetSpecialFolder(“文件夹名或对象型变量”)

相对于驱动器对象,文件夹对象的属性较多,下面将其常用属性列于表1.2。

表1.2 文件夹属性

③FSO对象操作文件的方法。

设文件型变量File已被赋值,现在是一文件型对象变量,fso已声明为FileSystemObject型变量,则移动、复制、删除文件的方法见表1.3。

表1.3 FSO操作文件的方法

表中string是表示移动文件及目的地,要复制、删除的文件名及路径的字符串。文件型对象File的属性较多,常用的见表1.4。

表1.4 文件型对象属性

续表1.4

④FSO对象操作文本文件。

使用FSO对象模型创建的textstream对象属于文本文件。应用textstream对象所具有的属性和方法,可使文件的打开、关闭、读出和写入非常方便。

A.文件的创建。

Dim fso As New FileSystemObject,ts As textstream

Set ts = fso.CreateTextFile(“C:\testfile.txt ” ,True)

上述语句功能是声明对象型变量,创建文件并赋予文本文件型变量ts。语句中的参数设置为True,表明允许覆盖同名文件。

B.读写文件。

textstream对象型变量文件操作具体功能与方法见表1.5。

表1.5 处理文本文件的方法