FileSystemObject对象及常用方法

FSO 对象模式包含在 Scripting 类型库中,该库位于 Scrrun.dll 文件中。因而,要使用 FSO 对象模式,必须把 Scrrun.dll 放在 Web 服务器的适当系统目录中。

要用 FileSystemObject (FSO) 对象模式来编程,则:

  • 使用 CreateObject 方法来创建 FileSystemObject 对象。
  • 在新创建的对象上使用适当的方法。
  • 访问对象的属性。

1.创建FSO对象

  使用 CreateObject 对象来创建 FileSystemObject 对象, 在 VBScript 中,使用下面的代码来创建 FileSystemObject 的一个实例:

 Dim fso

 Set fso =CreateObject("Scripting.FileSystemObject")

    在 Visual Basic Scripting Edition 中,使用下面的代码来做同样的事情:

 var fso;

 fso =new ActiveXObject("Scripting.FileSystemObject");

    在这两个示例中,Scripting 是类型库的名字,而 FileSystemObject 则是想要创建的对象的名字。

2.FSO对象属性方法

  要创建一个新的对象,则使用 CreateTextFileCreateFolder (FSO 对象模式不支持驱动器的创建或删除)。

  要删除对象,则使用 FileSystemObject 对象的 DeleteFileDeleteFolder 方法,或 FileFolder 对象的 Delete 方法。也可以使用适当的方法,来复制和移动文件与文件夹。

       实例:Set objFSO = CreateObject("Scripting.FileSystemObject")

      objFSO.CreateFolder("D:\123")

      objFile.CreateTextFile("D:\123.vbs")

      Set objFSO = nothing

       或:   Set objFSO = CreateObject("Scripting.FileSystemObject")

      Set objFolder = objFSO.CreateFolder("D:\123")

            objFolder.delete

      Set objFolder = nothing

      Set objFSO = nothing  

   访问现有驱动器、文件和文件夹,使用FSO对象中的适当的 "get" 方法:

  • GetDrive
  • GetFolder
  • GetFile

在 VBScript 中要访问现有文件:

Dim fso, f1

Set fso =CreateObject("Scripting.FileSystemObject")

Set f1 =fso.GetFile("c:\test.txt") '返回test.txt文件的路径“c:\test.txt”
'GetFile 返回与指定文件的路径,参数可以是绝对路径和相对路径,如果指定的文件不存在将出现错误

不要对新创建的对象使用 "get" 方法,因为 "create" 函数已经返回那个对象的一个句柄。例如,如果使用 CreateFolder 方法创建了一个新的文件夹,则不要使用 GetFolder 方法来访问它的属性,如 NamePathSize等等。只需设一个变量给 CreateFolder 函数,来获得新创建文件夹的句柄名,然后访问它的属性、方法和事件。要在 VBScript 中这样做,则使用下面的代码:

Sub CreateFolder

   Dim fso, fldr   Set fso =CreateObject("Scripting.FileSystemObject")   Set fldr =fso.CreateFolder("C:\MyTest")   Response.Write "Created folder: " & fldr.NameEnd Sub

常用方法属性实例:
Set objFSO = CreateObject("Scripting.FileSystemObject")
 
Set objFile = objFSO.GetFile(wscript.scriptfullname)
 '获取当前执行文件所在的路径
getProjectPath = objFSO.GetParentFolderName(objFile) '获取文件或文件夹所在路径的上一级目录

Set objFSO = Nothing
 
Set objFile = Nothing

参考:http://www.jb51.net/shouce/vbs/sgprogrammingfilesystemobject-1.htm

你可能感兴趣的:(object)