VBS基础篇 - FileSystemObject对象详解

2019-01-15 19:29:16王冬梅

GetFile的使用

方法名:GetFile(filespec)

说明:返回与指定路径中某文件相应的 File 对象,既而可以访问到File的属性。

示例:

Dim sourcepath sourcepath = "C:/testing/778899.txt" Call FolderAttributes(sourcepath) Sub FolderAttributes(sourcepath) Dim fso,objFile Set fso = CreateObject("Scripting.FileSystemObject") '调用GetFile()返回File对象,通过File对象来访问其下的属性 set objFile = fso.GetFile(sourcepath) reporter.ReportEvent micDone,"访问file的属性","该文件所在的盘符为:" & objFile.Drive & " 文件名为:" & objFile.Name End Sub

注:关于File对象的属性,将在下面会详细介绍

GetTempName的使用

方法名:GetTempName()

说明:返回随机生成的临时文件或文件夹的名称,用于执行要求临时文件或文件夹的操作

示例:

Dim fso, tempfile '创建FileSystemObject对象 Set fso = CreateObject("Scripting.FileSystemObject") '调用CreateTempFile函数,并将对象赋值给tempfile Set tempfile = CreateTempFile '在临时文件中写入字符 tempfile.WriteLine "世界你好" '关闭对象 tempfile.Close Function CreateTempFile Dim tfolder, tname, tfile Const TemporaryFolder = 2 'GetSpecialFolder()中的参数2,返回一个名为Temp的临时文件夹 Set tfolder = fso.GetSpecialFolder(TemporaryFolder) '随机生成一个临时文件名 tname = fso.GetTempName '在Temp临时文件夹下面,创建一个临时文件 Set tfile = tfolder.CreateTextFile(tname) '将结果赋值给函数 Set CreateTempFile = tfile End Function

备注:GetTempName 方法不创建文件,该方法仅提供临时文件名。示例中的的结果,默认保存在C:/Documents and Settings/Administrator/Local Settings/Temp

OpenTextFile的使用

方法名:(filename,iomode,create,format)

说明:打开指定的文件并返回一个 TextStream 对象,可以读取、写入此对象或将其追加到文件。详细的说明见表7.

示例:

Dim spec spec = "C:/testing.txt" '三个参数的分别为:以只读模式打开文件、以只写方式打开文件、打开文件并在文件末尾进行写操作 Const intForReading = 1,intForWriting = 2,intForAppending = 8 '调用OpenTextFileTest() Call OpenTextFileTest(spec,intForAppending) Sub OpenTextFileTest(sepc,intForAppending) Dim fso,objTStream '创建FileSystemObject对象 Set fso = CreateObject("Scripting.FileSystemObject") '参数true表示:如果文件不存在,则创建文件。最后OpenTextFile()将返回TextStream对象 Set objTStream = fso.OpenTextFile(sepc,intForAppending,true) '利用TextStream对象来将字符串写入文件 objTStream.write "hello word!" '释放TextStream对象 objTStream.close End Sub

File对象所提供的属性

表8 File 对象的属性及说明

属性

说明

Attributes

返回文件的属性。可以是下列值中的一个或其组合:Normal(0)、ReadOnly(1)、Hidden(2)、System(4)、Volume(名称)(9)、Directory(文件夹)(16)、Archive(32)、Alias(64) 和 Compressed(128)

DateCreated

返回该文件夹的创建日期和时间

DateLastAccessed

返回最后一次访问该文件的日期和时间

DateLastModified

返回最后一次修改该文件的日期和时间

Drive

返回该文件所在的驱动器的 Drive 对象

Name

设定或返回文件的名字

ParentFolder

返回该文件的父文件夹的 Folder 对象

Path

返回文件的绝对路径,可使用长文件名

ShortName

返回 DOS 风格的 8.3 形式的文件名

ShortPath

返回 DOS 风格的 8.3 形式的文件绝对路径

Size

返回该文件的大小(字节)

Type

如果可能,返回一个文件类型的说明字符串(例如:“Text Document”表示 .txt 文件)