婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > VBS基礎(chǔ)篇 - FileSystemObject對象詳解

VBS基礎(chǔ)篇 - FileSystemObject對象詳解

熱門標簽:如何用機器人進行電銷 東營快遞外呼系統(tǒng) 佛山真人電銷機器人廠家 百度地圖標注點距離代碼 齊齊哈爾高德地圖標注店 神行者美術(shù)館地圖標注 地圖標注政府哪個部門管 除了地圖標注還有這種生意嗎 哪里有便宜的地圖標注公司

下面是轉(zhuǎn)摘的關(guān)于FileSystemObject的詳細介紹,TextStream是其中的一個子對象。

前言

最近一直在學(xué)VBScript,網(wǎng)上相關(guān)的教程也有很多,但大多數(shù)的對象都放在ASP中講解,對于沒有學(xué)過ASP的同學(xué)來說就非常郁悶了。所以打算把在學(xué)習(xí)FileSystemObject及TextStream中所常用的屬性和方法寫出來供大家來學(xué)習(xí),如有不妥的地方請予以指出。

備注:所有的腳本均在QTP 9.0中測試過。

FileSystemObject對象概述

FileSystemObject 對象的作用:提供對計算機文件系統(tǒng)的訪問,它允許我們在代碼內(nèi)操作文本文件、文件夾及驅(qū)動器。FileSystemObject 對象提供一個屬性和一系列方法,可用它們來操縱 FileSystemObject 對象實現(xiàn)的一些從屬對象。這里提供了全部的內(nèi)容概要,然后介紹每一個從屬對象。

一、FileSystemObject 對象的屬性

FileSystemObject 對象只有一個屬性,它用于得到當前機器上的所有有效驅(qū)動器的列表,如表1所示:

表1 FileSystemObject 對象的屬性和說明

屬性

說明

Drivers

返回本地計算機可用的驅(qū)動器列表

‘如下腳本就可以獲得FileSystemObject的Drivers屬性
Set objFSO = CreateObject ("Scripting.FileSystemObject")
Set colDrivers = objFSO.Drivers

正如已經(jīng)看到的,F(xiàn)ileSystemObject 對象包含一個屬性——Drives,它返回一個包括本地計算機上所有可用驅(qū)動器的集合。

Drives 集合里的每個條目是一個 Drive 對象。Drive 對象的屬性如表2所示:

表2 Drive 對象的屬性及說明

方法

說明

AvailableSpave

考慮了帳戶定額和/或其他限制,返回驅(qū)動器上對于該用戶可用的空間的大小

DriveLetter

返回驅(qū)動器的字母

DriveType

返回驅(qū)動器的類型。返回值可以是 Unknown(0)、Removeable(1)、Fixed(2)、Network(3)、CDRom(4) 和 RamDisk(5)。然而需要注意的是當前版本的 scrrun.dll 不支持預(yù)定義常數(shù) Network,必須使用十進制 3 來代替

FileSystem

返回驅(qū)動器文件系統(tǒng)的類型。返回值包括“FAT”、“NTFS”和“CDFS”

FreeSpace

返回驅(qū)動器上可用剩余空間的總量

IsReady

返回一個布爾值表明驅(qū)動器是否已準備好

Path

返回一個由驅(qū)動器字母和冒號組成的驅(qū)動器路徑,即“C:”

RootFolder

返回代表的驅(qū)動器根目錄文件夾的 Folder 對象

SerialNumber

返回一個用于識別磁盤卷的十進制的序列號

ShareName

如果是一個網(wǎng)絡(luò)驅(qū)動器,返回該驅(qū)動器的網(wǎng)絡(luò)共享名

TotalSize

返回驅(qū)動器的總?cè)萘浚ㄒ宰止?jié)為單位)

VolumeName

設(shè)定或返回本地驅(qū)動器卷名

因此,通過使用 Drives 集合里的 Drive 對象,可以在服務(wù)器上產(chǎn)生一個驅(qū)動器列表,與通過檢查每個可能的驅(qū)動器字母來判別驅(qū)動器是否存在的方法相比,效率更高。我們也可以得到關(guān)于該驅(qū)動器的信息。

示例:

' 創(chuàng)建FileSystemObject對象

Set objFSO = CreateObject("Scripting.FileSystemObject")
' 創(chuàng)建Drives集合,并賦值給colDrives

Set colDrives = objFSO.Drives

' 遍歷Drives集合

For Each objDrive in colDrives

'判斷驅(qū)動器是否已準備好

    If objDrive.IsReady Then

        msg = "驅(qū)動器的名稱為:"  objDrive.DriveLetter  "  "

      msg =msg  "驅(qū)動器文件系統(tǒng)的類型:"  objDrive.FileSystem " "

        msg = msg  "驅(qū)動器的總?cè)萘浚?  int(objDrive.TotalSize/(1024*1024*1024))  "G "

        msg = msg  "剩余空間的總量:"  int(objDrive.FreeSpace/(1024*1024*1024))  "G "

    End If

Next

reporter.ReportEvent micDone ,"遍歷Drives集合",msg

備注:在系統(tǒng)上運行這段程序以前有一點要注意。如果在 A 驅(qū)動器里沒有磁盤,或 CD-ROM 驅(qū)動器里沒有光盤,將得到一個錯誤提示:“Disk Not Ready”。除了 DriveLetter 屬性和 DriveType 屬性外,在使用其他屬性和方法前,通過檢查每個驅(qū)動器的 IsReady 屬性,可以保護該頁面。

二、FileSystemObject 對象的方法

1. 與驅(qū)動器有關(guān)的方法

表3 與驅(qū)動器有關(guān)的方法及說明

方法

說明

DriveExists(drivespec)

如果在 drivespec 中指定的驅(qū)動器存在,則返回 True,否則返回 False。drivespec 參數(shù)可以是一個驅(qū)動器字母,或者是文件、文件夾的完整絕對路徑

GetDrive(drivespec)

返回 drivespec 指定的驅(qū)動器所對應(yīng)的Drive對象。drivespec 可以包含冒號、路徑分隔符或者是網(wǎng)絡(luò)共享名,即:“C”、“C:”、“C:”及“/machinesharename”

GetDriveName(drivespec)

用字符串返回 drivespec 指定的驅(qū)動器的名稱。drivespec 參數(shù)必須是文件或文件夾的絕對路徑,或者僅僅是驅(qū)動器字母,例如:“c:”或“c”

DriveExists的使用

方法名:DriveExists(drivespec)

說明:如果在 drivespec 中指定的驅(qū)動器存在,則返回 True,否則返回 False。drivespec 參數(shù)可以是一個驅(qū)動器字母,或者是文件、文件夾的完整絕對路徑

示例:

' 創(chuàng)建FileSystemObject對象

    Set objFSO = CreateObject ("Scripting.FileSystemObject")

For intCode = 65 To 90 'ANSI codes for 'A' to 'Z'

     strLetter = Chr(intCode) 'Chr:返回與指定的 ANSI 字符代碼相對應(yīng)的字符。

      If objFSO.DriveExists(strLetter) Then '判斷相應(yīng)的盤符是否存在,如存在輸出

         Reporter.ReportEvent micDone,"Show Drive”,” Found drive "  strLetter

      End If

Next

另外,如果已知要訪問的驅(qū)動器、文件夾或文件。可以直接對其使用 GetDrive、GetFolder、GetSpecialFolder 和 GetFile 方法。

2. 與文件夾有關(guān)的方法及屬性

用FileSystemObject對象來操作文件夾的方法:

與文件夾有關(guān)的方法及說明

方法

說明

BuildPath(path,name)

在已有的路徑 path 上增添名字為 name 的文件或文件夾,如果需要,則增添路徑分隔符' '

CopyFolder(source,destination,overwrite)

從指定的源文件夾 source(可以包含通配符)中復(fù)制一個或多個文件夾到指定的目標文件夾 destination,包含了源文件夾中的所有文件。如果 source 包含通配符或 destination 末尾是路徑分隔符(‘'),那么認為 destination 是要放置源文件夾的拷貝的文件夾。否則的話,認為 destination 是要創(chuàng)建的新文件夾的路徑名。如果 destination 文件夾已經(jīng)存在且 overwrite 參數(shù)設(shè)置為 False,將產(chǎn)生錯誤,缺省的 overwrite 參數(shù)是True

CreateFolder(foldername)

創(chuàng)建一個路徑名為 foldername 的文件夾。如果 foldername 已經(jīng)存在將產(chǎn)生錯誤

DeleteFolder(folderspec,force)

刪除由 folderspec 指定的一個或多個文件夾(可以在路徑的最后部分包含通過配符)及文件夾中的所有內(nèi)容。如果可選的 force 參數(shù)設(shè)置為 true,那么即使文件夾包含的文件具有只讀屬性,也將刪除該文件夾。缺省的 force 參數(shù)是 False

FolderExists(folderspec)

如果 folderspec 指定的文件夾存在則返回 True,否則返回 False。folderspec 參數(shù)可以包含文件夾的絕對或相對路徑,或者僅僅是當前文件夾中看到的文件夾名

GetAbsolutePathName(pathspec)

返回明確指定文件夾的路徑,其中要考慮到當前文件夾的路徑。例如,如果當前文件夾是“c:docssales”,而pathspec是“jan”,返回的字符是“c:docssalesjan”。通配符、”..”和”/”路徑操作符都是可以接受的

GetFolder(folderspec)

返回 folderspec 指定的文件夾對應(yīng)的 Folder 對象。folderspec 可以是文件夾的相對的或絕對的路徑

GetParentFolderName(pathspec)

返回pathspec 文件或文件夾的上一級文件夾。不檢驗該文件夾是否存在

GetSpecialfolder(folderspec)

返回一個特定的 Windows 文件夾相對應(yīng)的 Folder 對象。參數(shù) folderspec 的允許值是WindowsFolder(0)、SystemFolder(1) 和 TemporaryFolder(2)

MoveFolder(source,destination)

將 source 指定的一個或多個文件夾移動到 destination 指定的文件夾。在 source 里可以包含通配符,但在 destination 中不行。如果 source 包含通配符或 destination 末尾是路徑分隔符(‘'),則認為 destination 是要放置源文件夾的文件夾,否則認為它是一個新文件夾的完整路徑和名字。如果目的文件夾 destination 已經(jīng)存在則產(chǎn)生錯誤

CopyFolder的使用

方法名:CopyFolder(source,destination,overwrite)

說明:將文件夾從某位置遞歸復(fù)制到另一位置。詳細說明請查看表4。

示例:

' 創(chuàng)建FileSystemObject對象
Set objfso = createobject("scripting.FileSystemObject")
' 將D:/test下所有的內(nèi)容復(fù)制到c:/123
objfso.CopyFolder "D:/test","c:/123"

注:如果c:/123不存在,則QTP將自動創(chuàng)建它

CreateFolder及DeleteFolder的使用

方法名:CreateFolder(foldername)/DeleteFolder(folderspec,force)

說明:創(chuàng)建/刪除一個路徑名為 foldername 的文件夾。詳細說明請查看表4。

示例:

' 創(chuàng)建FileSystemObject對象

Set objfso = createobject("scripting.FileSystemObject")

‘ 在c:/創(chuàng)建new folder文件夾,如果文件夾存在,則會出現(xiàn)錯誤提示

objfso.CreateFolder("c:/new folder")

‘ 刪除c:/new folder文件夾

objfso.DeleteFolder("c:/new folder")

注:DeleteFolder無論文件夾是否包含內(nèi)容,都將刪除該文件夾

FolderExists的使用

方法名:FolderExist(folderspec)

說明:如果指定的文件夾存在,則返回 True;否則返回 False。詳細說明請查看表4。

示例:

Function hanshu(strpath)
    Dim objfso,objset
    ‘ 創(chuàng)建FileSystemObjec對象
    Set objfso = CreateObject("Scripting.FileSystemObject")
    ‘ 判斷在指定的路徑中是否有
    If Not objfso.FolderExists(strpath) Then
        objset = objfso.CreateFolder(strpath)
    else
        objset = objfso.DeleteFolder(strpath)
    End If
    hanshu = objset
End Function
 
hanshu("c:/new folder")

GetAbsolutePathName的使用

方法名:GetAbsolutePathName(pathspec)

說明:從提供的指定路徑中返回完整且含義明確的路徑。詳細說明請查看表4。

示例:

Dim objfso
‘創(chuàng)建FileSystemObject對象
Set objfso = createobject("Scripting.FileSystemObject")
‘返回當前的目錄,下面兩條語句返回一樣的結(jié)果
msgbox (objfso.GetAbsolutePathName(""))
msgbox (objfso.GetAbsolutePathName("C:"))

GetFolder的使用

方法名:GetFolder(folderspec)

說明:返回與指定的路徑中某文件夾相應(yīng)的 Folder 對象。可以根據(jù)所返回的Folder 對象,再去訪問該Folder 對象所持有的屬性。

示例:

Dim objfso,objset
'創(chuàng)建FileSystemObject對象
Set objfso = createobject("Scripting.FileSystemObject")
'返回C:/testing的Folder的對象
Set objset = objfso.GetFolder("C:/testing")
' 根據(jù)所返回的Folder對象,去訪問其相關(guān)的屬性
reporter.ReportEvent micDone ,"Folder對象的相關(guān)屬性","文件夾創(chuàng)建的日期:"  objset.DateCreated "; 文件夾所在的驅(qū)動:"  objset.Drive  "; 文件夾的名字:"  objset.Name

注:關(guān)于Folder對象的屬性,將在下面會詳細介紹

GetParentFolderName的使用

方法名:GetParentFolderName(pathspec)

說明:返回字符串,該字符串包含指定的路徑中最后一個文件或文件夾的父文件夾。

示例:

Dim objfso
'創(chuàng)建FileSystemObject對象
Set objfso = createobject("Scripting.filesystemobject")
'使用GetParentFolderName方法來返回上一層文件夾
msgbox (objfso.GetParentFolderName("C:/WINDOWS/addins"))

GetSpecialFolder的使用

方法名:GetSpecialFolder(folderspec)

說明:返回指定的特殊文件夾。詳細說明請查看表4。

示例:

Dim fso,tempName
Set fso = CreateObject("Scripting.FileSystemObject")
'GetSpecialFolder()中的參數(shù)2,返回一個名為Temp的臨時文件夾
Set tempName = fso.GetSpecialFolder(2)
msgbox tempName

MoveFolder的使用

方法名:MoveFolder(source,destination)

說明:將一個或多個文件夾從某位置移動到另一位置。詳細說明請查看表4。

示例:

Dim sourcepath,destination
sourcepath = "C:/testing"
destination = "C:/123"
'調(diào)用MoveFolders方法
call MoveFolders(sourcepath,destination)
 
Sub MoveFolders(sourcepath,destination)
  Dim fso
    '創(chuàng)建FileSystemObject對象
  Set fso = CreateObject("Scripting.FileSystemObject")
    '使用MoveFolder方法,將testing文件夾的內(nèi)容移動到123文件夾下
  fso.MoveFolder sourcepath,destination
End Sub

注:如果腳本在運行前文件夾123已存在,則運行是會發(fā)生錯誤;在不同的磁盤下MoveFolder方法不能用

上面提到的Folder方法是基于FileSystemObject 對象的,現(xiàn)在我們來看看基于Folder對象的方法。

Folder對象所提供的方法

Folder 對象提供一組可用于復(fù)制、刪除和移動當前文件夾的方法。這些方法的運行方式與 FileSystemObject 對象的CopyFolder、DeleFolder 和 MoveFolder 方法相同,但這些方法不要求 source 參數(shù),因為源文件就是這個文件夾。

備注:CopyFolder、DeleFolder等方法是基于FileSystemObject 對象的;而下面的Copy、Delete等方法是基于FileSystemObject對象下的Folder對象,他們實現(xiàn)的功能是類似的。

表5 Folder 對象的方法及說明

方法

說明

Copy(destination,overwrite)

將這個文件夾及所有的內(nèi)容復(fù)制到 destination 指定的文件夾。如果 destination 的末尾是路徑分隔符(‘'),那么認為 destination 是放置拷貝文件夾的一個文件夾。否則認為 destination 是要創(chuàng)建的新文件夾的路徑和名字。如果目標文件夾已經(jīng)存在且 overwrite 參數(shù)設(shè)置為 False,將產(chǎn)生錯誤,缺省的 overwrite 參數(shù)是 True

Delete(force)

刪除文件夾及里面的所有內(nèi)容。如果可選的 force 參數(shù)設(shè)置為 True,即使文件夾設(shè)置為只讀或含有只讀的文件,也將刪除該文件夾。缺省的 force 是 False

Move(destination)

將文件夾及里面所有的內(nèi)容移動到 destination 指定的文件夾。如果 destination 的末尾是路徑分隔符(‘'),那么認為 destination 是放置移動文件夾的一個文件夾。否則認為 destination 是一個新的文件夾的路徑和名字。如果目標文件夾已經(jīng)存在,則出錯

CreateTextFile(filename,overwrite,unicode)

用指定的文件名在文件夾內(nèi)創(chuàng)建一個新的文件,并且返回一個相應(yīng)的TextStream 對象。如果可選的 overwrite參數(shù)設(shè)置為True,將覆蓋任何已有的同名文件。缺省的overwrite 參數(shù)是 False。如果可選的 unicode 參數(shù)設(shè)置為 True,文件的內(nèi)容將存儲為 unicode 文本。缺省的 unicode 是 False

Copy的使用

方法名:Copy(destination,overwrite)

說明:將文件夾的所有內(nèi)容,復(fù)制到destination文件夾中。詳細說明請見表5

示例:

Dim sourcepath
sourcepath = "C:/testing"
Call FolderAttributes(sourcepath)
 
Sub FolderAttributes(sourcepath)
  Dim fso,objset
  Set fso = CreateObject("Scripting.FileSystemObject")
  '使用GetFolder方法來返回Folder對象
  Set objset = fso.getFolder(sourcepath)
  '將testing中的所有內(nèi)容復(fù)制到123文件夾中
  objset.Copy("d:/123")
End Sub

備注:如果目標文件夾不存在,則腳本在運行是將自動創(chuàng)建

Delete的使用

方法名:Delete(force)

說明:刪除文件夾及里面的所有內(nèi)容。詳細說明請見表5

示例:

Dim sourcepath
sourcepath = "C:/testing"
Call FolderAttributes(sourcepath)
 
Sub FolderAttributes(sourcepath)
  Dim fso,objset
  Set fso = CreateObject("Scripting.FileSystemObject")
  '使用GetFolder方法來返回Folder對象
  Set objset = fso.getFolder(sourcepath)
  '將testingw文件夾及文件夾里所有的內(nèi)容全部刪除
  objset.Delete(True)
End Sub

備注:如果文件夾屬性為只讀且Delete的參數(shù)為False,則腳本在運行是將提示“沒有權(quán)限”;當文件夾不存在時,將提示“路徑未找到”。

Move的使用

方法名:Move(destination)

說明:將文件夾及里面所有的內(nèi)容移動到 destination 指定的文件夾。詳細說明請見表5

示例:

Dim sourcepath
sourcepath = "C:/testing"
Call FolderAttributes(sourcepath)
 
Sub FolderAttributes(sourcepath)
  Dim fso,objset
    Set fso = CreateObject("Scripting.FileSystemObject")
    '使用GetFolder方法來返回Folder對象
    Set objset = fso.getFolder(sourcepath)
    '使用Move()將testing文件夾及里面所有的內(nèi)容,移動到目標文件夾123中
    objset.Move("C:/123")
End Sub

備注:如果目標文件夾123已存在,則腳本運行時提示“文件已存在”;如果目標文件夾123在D:/,則腳本運行使提示“沒有權(quán)限”

CreateTextFile的使用

方法名:CreateTextFile(filename,overwrite,unicode)

說明:創(chuàng)建指定文件并返回 TextStream 對象,該對象可用于讀或?qū)憚?chuàng)建的文件。詳細說明請見表5。

示例:

Dim sourcepath
sourcepath = "C:/testing"
Call FolderAttributes(sourcepath)
 
Sub FolderAttributes(sourcepath)
  Dim fso,objset
    Set fso = CreateObject("Scripting.FileSystemObject")
    '使用GetFolder方法來返回Folder對象
    Set objset = fso.getFolder(sourcepath)
'在testing文件夾下,使用CreateTextFile()創(chuàng)建myClass2.doc文件
  objset.CreateTextFile "myClass2.doc",true
End Sub

備注:CreateTextFile()所創(chuàng)建的文件類型是根據(jù)所提供的擴展名來確定的,如也可以寫成myClass2.txt、myClass.exe等等;FileSystemObject對象也可以調(diào)用CreateTextFile(),我們可以將上面的代碼改寫成:

fso.CreateTextFile “C:/testing/myClass.doc”,true

Folder對象所提供的屬性:

表6 Folder 對象的屬性及說明

屬性

說明

Attributes

返回文件夾的屬性。可以是下列值中的一個或其組合:Normal(0)、ReadOnly(1)、Hidden(2)、System(4)、Volume(名稱)(8)、Directory(文件夾)(16)、Archive(32)、Alias(64) 和 Compressed(128)。例如,一個隱藏的只讀文件,Attributes 的值為 3

DateCreated

返回該文件夾的創(chuàng)建日期和時間

DateLastAccessed

返回最后一次訪問該文件夾的日期和時間

DateLastModified

返回最后一次修改該文件夾的日期和時間

Drive

返回該文件夾所在的驅(qū)動器的驅(qū)動器字母

Files

返回 Folder 對象包含的 Files 集合,表示該文件夾內(nèi)所有的文件

IsRootFolder

返回一個布爾值說明該文件夾是否是當前驅(qū)動器的根文件夾

Name

設(shè)定或返回文件夾的名字

ParentFolder

返回該文件夾的父文件夾對應(yīng)的 Folder 對象

Path

返回文件夾的絕對路徑,使用相應(yīng)的長文件名

ShortName

返回 DOS 風(fēng)格的 8.3 形式的文件夾名

ShortPath

返回 DOS 風(fēng)格的 8.3 形式的文件夾的絕對路徑

Size

返回包含在該文件夾里所有文件和子文件夾的大小

SubFolers

返回該文件夾內(nèi)包含的所有子文件夾對應(yīng)的 Folders 集合,包括隱藏文件夾和系統(tǒng)文件夾

Type

如果可能,返回一個文件夾的說明字符串(例如,“Recycle Bin”)

如上面提到的,我們可以使用下面的腳本來訪問Folder對象

Dim objfso,objset
'創(chuàng)建FileSystemObject對象
Set objfso = createobject("Scripting.FileSystemObject")
'返回C:/testing的Folder的對象
Set objset = objfso.GetFolder("C:/testing")

注:通過Folder對象我們就可以訪問其提供的方法及屬性

Drive、DateCreated、Name屬性的使用

示例:

Dim sourcepath
sourcepath = "C:/testing"
Call FolderAttributes(sourcepath)
 
Sub FolderAttributes(sourcepath)
  Dim fso,objset
    Set fso = CreateObject("Scripting.FileSystemObject")
    '使用GetFolder方法來返回Folder對象
    Set objset = fso.getFolder(sourcepath)
    '通過Folder對象來訪問Folder屬性
    reporter.ReportEvent micDone ,"測試Folder屬性","文件夾所在的磁盤為:"  objset.Drive  " 文件夾所創(chuàng)建的日期:"  objset.DateCreated  " 文件夾的名字為:"  objset.Name
End Sub

SubFolers屬性的使用

示例:

Dim sourcepath
sourcepath = "C:/Program Files/Common Files"
Call FolderAttributes(sourcepath)
 
Sub FolderAttributes(sourcepath)
  Dim fso,objset,objFolders,FolderName,i
  i = 0
    Set fso = CreateObject("Scripting.FileSystemObject")
    '使用GetFolder方法來返回Folder對象
    Set objset = fso.getFolder(sourcepath)
    'SubFolders屬性將返回所有子文件夾對應(yīng)的Folder集合
    Set objFolders = objset.SubFolders
    '遍歷Folder集合,統(tǒng)計出共有多少個文件夾,及相關(guān)文件夾的名字
    For Each objFolder in objFolders
       i = i +1
       'vbcr為換行符
       FolderName = FolderName + objFolder.Name + vbcr
    Next
    msgbox ("共有"  i "個文件夾,文件夾的名字為:"  FolderName)
End Sub

Files屬性的使用

示例:

Dim objFso,objGetFolder,intCount,strFileName
intCount = 0
'創(chuàng)建FileSystemObject對象
Set objFso= CreateObject("Scripting.FileSystemObject")
'使用GetFolder()獲得文件夾對象
Set objGetFolder = objFso.GetFolder("C:/test")
'遍歷Files集合并顯示文件夾中所有的文件名
For Each strFile in objGetFolder.Files
    intCount = intCount + 1
    strFileName =strFileName  "第"  intCount  "個文件夾名為:"  strFile.Name  vbcr
Next
msgbox strFileName

3. 以文件有關(guān)的方法及屬性

用FileSystemObject對象來操作文件的方法:

表7 與文件有關(guān)的方法及說明

方法

說明

CopyFile(source,destination,overwrite)

將 source(可包含通配符)指定的一個或多個文件復(fù)制到指定的目標文件夾 destination。如果 source 包含通配符或 destination 末尾是路徑分隔符(‘'),那么認為 destination 是文件夾。否則認為 destination 為一新文件的完全路徑和名稱。如果目標文件夾已經(jīng)存在且 overwrite 參數(shù)設(shè)置為 False,將產(chǎn)生錯誤。缺省的 overwrite 參數(shù)是 True

CreateTextFile(filename,overwrite,unicode)

用指定的文件名 filename 在磁盤上創(chuàng)建一個新的文本文件,并返回與其對應(yīng)的 TextStream 對象,如果可選的 overwrite 參數(shù)設(shè)置為 True,則覆蓋同一路徑下已有的同名文件。缺省的 overwrite 參數(shù)是 False。如果可選的 unicode 參數(shù)設(shè)置為 True,則該文件的內(nèi)容將存儲為 Unicode 文本,缺省的 unicode 參數(shù)是 False

DeleFile(filespec,force)

刪除由 filespec 指定的一個或多個文件(可以在路徑的最后部分包含通配符)。如果可選的 force 參數(shù)設(shè)置為 true,那么也刪除具有只讀屬性的文件。缺省的 force 參數(shù)是False

FileExists(filespec)

如果 filespec 指定的文件存在則返回 True,否則返回 False。filespec 參數(shù)可以包含文件的絕對路徑或相對路徑,或者是當前文件夾中的文件名

GetBaseName(filespec)

返回 filespec 指定的文件的名稱,即包含文件路徑但去掉了文件的擴展名

GetExtensionName(filespec)

返回 filespec 指定的文件的擴展名

GetFile(filespec)

返回 filespec 指定的文件所對應(yīng)的 File 對象。可以指定文件的相對或絕對路徑

GetFileName(pathspec)

返回pathspec 指定的文件的路徑或文件名,如果沒有文件名就返回最后的文件夾名。不檢查該文件或文件夾是否存在

GetTempName()

返回一個隨機產(chǎn)生的文件名,用于完成運算所需的臨時文件或文件夾

MoveFile(source,destination)

將 source 指定的一個或多個源文件移動到 destination 指定的目的文件夾。在 source里可以包含通配符,但 destination 不行。如果 source 包含通過配符或 destination 末尾是路徑分隔符(‘'),那么認為 destination 是一文件夾。否則,認為 destination 是一新文件夾的完整路徑和名稱。如果目的文件夾已經(jīng)存在則產(chǎn)生錯誤

OpenTextFile(filename,iomode,create,format)

創(chuàng)建一個名叫做 filename 的文件,或打開一個現(xiàn)有的名為 filename 的文件,并且返回一個與其相關(guān)的 TextStream 對象。filename 參數(shù)可以包含絕對或相對路徑。iomode 參數(shù)指定了所要求的訪問類型。允許的數(shù)值是 ForReading(1)(缺省)、ForWriting(2)、ForAppending(8)。當寫入或追加到一個不存在的文件時,如果 create 參數(shù)設(shè)置為 true,就將創(chuàng)建一個新文件。缺省的 create 參數(shù)是 False。format 參數(shù)說明對文件讀或?qū)懙臄?shù)據(jù)格式。允許數(shù)值是:TristatetFalse(0)(缺省),按照 ASCII 格式打開;TristatetTrue(-1),按照 Unicode 格式打開;TristateDefault(-2),用系統(tǒng)缺省格式打開

CopyFile及MoveFile的使用

方法名:CopyFile(source,destination,overwrite)

說明:將一個或多個文件從某位置復(fù)制到另一位置。詳細說明請見表7

方法名:MoveFile(source,destination)

說明:將 source 指定的一個或多個源文件移動到 destination 指定的目的文件夾。

示例:

Dim sourcepath,targetpath
sourcepath = "C:/testing/*.txt"
targetpath = "C:/123/"
Call FolderAttributes(sourcepath,targetpath)
Sub FolderAttributes(sourcepath,targetpath)
  Dim fso
    Set fso = CreateObject("Scripting.FileSystemObject")
'將testing文件夾下所有擴展名名為.txt的文件,復(fù)制到123文件夾下
    fso.CopyFile sourcepath,targetpath
    fso.MoveFile sourcepath,targetpath
End Sub

備注:如果C:/123文件夾不存在,則腳本運行時提示“路徑不存在”

CreateTextFile及DeleteFile的使用

方法名:CreateTextFile(filename,overwrite,unicode)

說明:創(chuàng)建指定文件并返回 TextStream 對象,該對象可用于讀或?qū)憚?chuàng)建的文件。

方法名:DeleFile(filespec,force)

說明:刪除指定的文件。詳細說明請見表7.

示例:

Dim sourcepath
sourcepath = "C:/testing/ myClass2.doc "
Call FolderAttributes(sourcepath)
 
Sub FolderAttributes(sourcepath)
  Dim fso
    Set fso = CreateObject("Scripting.FileSystemObject")
'在testing文件夾下,使用CreateTextFile()創(chuàng)建myClass2.doc文件
fso.CreateTextFile sourcepath,true
'刪除testing文件夾下,所有擴展名為.txt的文件
fso.DeleteFile sourcepath,true
End Sub

備注:如果所刪除的文件為只讀屬性且DeleteFile()的參數(shù)為false的話,則腳本運行是出現(xiàn)“沒有權(quán)限”FileExists的使用

方法名:FileExists(filespec)

說明:判斷所指定的文件是否存在。此方法將返回Bool值. 詳細說明請見表7.

示例:

Dim sourcepath
sourcepath = "C:/testing/test.txt"
Call FolderAttributes(sourcepath)
 
Sub FolderAttributes(sourcepath)
  Dim fso
    Set fso = CreateObject("Scripting.FileSystemObject")
    '判斷C:/testing/test.txt是否有存在,如果存在返回“true”;否則返回“false”
    If fso.FileExists(sourcepath) Then
       msgbox "true"
    else
       msgbox "false"
    End If
End Sub

GetBaseName、GetFileName及GetExtensionName的使用

方法名:GetBaseName(filespec)

說明:返回字符串,文件 (不帶擴展名), 或者提供的路徑說明中的文件夾。

方法名:GetExtensionName(filespec)

說明:返回字符串,該字符串包含路徑最后一個組成部分的擴展名。

方法名:GetFileName(pathspec)

說明:返回指定路徑(不是指定驅(qū)動器路徑部分)的最后一個文件或文件夾。

示例:

Dim sourcepath
sourcepath = "C:/testing/test.txt"
Call FolderAttributes(sourcepath)
 
Sub FolderAttributes(sourcepath)
  Dim fso
    Set fso = CreateObject("Scripting.FileSystemObject")
    '返回文件名test, 擴展名 txt, 文件名+擴展名 test.txt
     Msgbox (fso.GetBaseName(sourcepath))
     Msgbox (fso. GetExtensionName(sourcepath))
    Msgbox (fso.GetFileName(sourcepath))
End Sub

GetFile的使用

方法名:GetFile(filespec)

說明:返回與指定路徑中某文件相應(yīng)的 File 對象,既而可以訪問到File的屬性。

示例:

Dim sourcepath
sourcepath = "C:/testing/778899.txt"
Call FolderAttributes(sourcepath)
 
Sub FolderAttributes(sourcepath)
  Dim fso,objFile
    Set fso = CreateObject("Scripting.FileSystemObject")
    '調(diào)用GetFile()返回File對象,通過File對象來訪問其下的屬性
    set objFile = fso.GetFile(sourcepath)
    reporter.ReportEvent micDone,"訪問file的屬性","該文件所在的盤符為:"  objFile.Drive  "       文件名為:"  objFile.Name
End Sub

注:關(guān)于File對象的屬性,將在下面會詳細介紹

GetTempName的使用

方法名:GetTempName()

說明:返回隨機生成的臨時文件或文件夾的名稱,用于執(zhí)行要求臨時文件或文件夾的操作

示例:

Dim fso, tempfile
'創(chuàng)建FileSystemObject對象
Set fso = CreateObject("Scripting.FileSystemObject")
'調(diào)用CreateTempFile函數(shù),并將對象賦值給tempfile
Set tempfile = CreateTempFile
'在臨時文件中寫入字符
tempfile.WriteLine "世界你好"
'關(guān)閉對象
tempfile.Close
 
Function CreateTempFile
  Dim tfolder, tname, tfile
  Const TemporaryFolder = 2
  'GetSpecialFolder()中的參數(shù)2,返回一個名為Temp的臨時文件夾
  Set tfolder = fso.GetSpecialFolder(TemporaryFolder)
  '隨機生成一個臨時文件名
  tname = fso.GetTempName 
  '在Temp臨時文件夾下面,創(chuàng)建一個臨時文件
  Set tfile = tfolder.CreateTextFile(tname)
  '將結(jié)果賦值給函數(shù)
  Set CreateTempFile = tfile
End Function

備注:GetTempName 方法不創(chuàng)建文件,該方法僅提供臨時文件名。示例中的的結(jié)果,默認保存在C:/Documents and Settings/Administrator/Local Settings/Temp

OpenTextFile的使用

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

說明:打開指定的文件并返回一個 TextStream 對象,可以讀取、寫入此對象或?qū)⑵渥芳拥轿募T敿毜恼f明見表7.

示例:

Dim spec
spec = "C:/testing.txt"
'三個參數(shù)的分別為:以只讀模式打開文件、以只寫方式打開文件、打開文件并在文件末尾進行寫操作
Const intForReading = 1,intForWriting = 2,intForAppending = 8
'調(diào)用OpenTextFileTest()
Call OpenTextFileTest(spec,intForAppending)
 
Sub OpenTextFileTest(sepc,intForAppending)
  Dim fso,objTStream
  '創(chuàng)建FileSystemObject對象
  Set fso = CreateObject("Scripting.FileSystemObject")
  '參數(shù)true表示:如果文件不存在,則創(chuàng)建文件。最后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

返回該文件夾的創(chuàng)建日期和時間

DateLastAccessed

返回最后一次訪問該文件的日期和時間

DateLastModified

返回最后一次修改該文件的日期和時間

Drive

返回該文件所在的驅(qū)動器的 Drive 對象

Name

設(shè)定或返回文件的名字

ParentFolder

返回該文件的父文件夾的 Folder 對象

Path

返回文件的絕對路徑,可使用長文件名

ShortName

返回 DOS 風(fēng)格的 8.3 形式的文件名

ShortPath

返回 DOS 風(fēng)格的 8.3 形式的文件絕對路徑

Size

返回該文件的大小(字節(jié))

Type

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

我們在前面File對象的方法中曾提到,可以使用FileSystemObject對象的GetFile()來訪問File對象屬性。

訪問File對象屬性的示例如下:

Dim sourcepath
sourcepath = "C:/testing/778899.txt"
Call FolderAttributes(sourcepath)
 
Sub FolderAttributes(sourcepath)
  Dim fso,objFile
    Set fso = CreateObject("Scripting.FileSystemObject")
    '調(diào)用GetFile()返回File對象,通過File對象來訪問其下的屬性
    set objFile = fso.GetFile(sourcepath)
    reporter.ReportEvent micDone,"訪問file的屬性","該文件所在的盤符為:"  objFile.Drive  "       文件名為:"  objFile.Name
End Sub

備注:File對象屬性的使用方法和前面介紹的Folder對象屬性的使用方法一樣,所以在這不一一列出。

TextStream對象概述

TextStream對象是用于訪問文本文件的對象,它是FileSystemObject一個獨立的附屬對象,但在使用TextStream對象時,我們?nèi)砸柚鶩ileSystemObject 對象或其附屬對象來創(chuàng)建一個 TextStream 對象并訪問磁盤文件的內(nèi)容。可以通過FileSystemObject 對象的CreateTextFile()及OpenTextFile(),來獲取TextStream的對象句柄。

下面我們來具體的看看TextStream 對象的方法及屬性的使用。

一、TextStream對象的方法

表9  TextStream 對象的方法及說明

方法

說明

Close()

關(guān)閉一個打開的文件

Read(numchars)

從文件中讀出 numchars 個字符

ReadAll()

作為單個字符串讀出整個文件

ReadLine()

作為一個字符串從文件中讀出一行(直到回車符和換行)

Skip(numchars)

當從文件讀出時忽略 numchars 個字符

SkipLine()

當從文件讀出時忽略下一行

Write(string)

向文件寫入字符串 string

WriteLine(string)

向文件寫入字符串 string(可選)和換行符

WriteBlankLines(n)

向文件寫入 n 個換行符

Close、Write、WriteLine及WriteBlankLines的使用

方法名:Close()

說明:關(guān)閉正在打開的文件

方法名:WriteLine(string)

說明:向文件寫入字符串 string(可選)和換行符。

示例:

Dim strPath,strText
strPath = "C:/testing.txt"
strText = "This is Test !"  vbCrLf  “hello word !”
'調(diào)用函數(shù)
Call CreateFile(strPath,strText)
 
Sub CreateFile(strPath,strText)
    Dim objFso,objStream
    '創(chuàng)建FileSystemObject對象
    Set objFso = CreateObject("Scripting.FileSystemObject")
    '使用FileSystemObject對象的CreateTextFile(),來返回一個TextStream對象句柄
    Set objStream = objFso.CreateTextFile(strPath,True)
    '三個Write的意思分別為:在文本中寫入字符、寫入帶換行符的字符、寫入3個換行符
     objStream.Write(strText)
    ‘objStream.WriteLine(strText)
    ‘objStream. WriteBlankLines 3
    '關(guān)閉TextStream對象
    objStream.Close
End Sub

Read、ReadAll及ReadLine的使用

方法名:Read(numchars)

說明:從 TextStream 文件中讀入指定數(shù)目的字符并返回結(jié)果字符串。

方法名:ReadAll()

說明:讀入全部 TextStream 文件并返回結(jié)果字符串。

方法名:ReadLine()

說明:從 TextStream 文件中讀入一整行字符(直到下一行,但不包括下一行字符),并返回結(jié)果字符串。

示例:

Sub CreateFile(strPath,strText)
    Dim objFso,objStream
    '創(chuàng)建FileSystemObject對象
    Set objFso = CreateObject("Scripting.FileSystemObject")
    '使用FileSystemObject對象的CreateTextFile(),來返回一個TextStream對象句柄
    Set objStream = objFso.CreateTextFile(strPath,True)
    '寫入字符
    objStream.WriteLine(strText)
    Set objStream = objFso.OpenTextFile(strPath,1,true)
    msgbox (objStream.ReadLine)
    'msgbox (objStream.ReadAll)
  ' msgbox (objStream.Read(Len(strText)))
     '關(guān)閉TextStream對象
    objStream.Close
End Sub

Skip、SkipLine的使用

方法名:Skip(numchars)

說明:讀取 TextStream 文件時跳過指定數(shù)目的字符

方法名:SkipLine()

說明:當讀到 TextStream 文件時,跳過下一行。

示例:

Dim strPath,strText
strPath = "C:/testing.txt"
'調(diào)用函數(shù)
Call CreateFile(strPath)
 
Sub CreateFile(strPath)
    Dim objFso,objStream
    '創(chuàng)建FileSystemObject對象
    Set objFso = CreateObject("Scripting.FileSystemObject")
    '使用FileSystemObject對象的CreateTextFile(),來返回一個TextStream對象句柄
    Set objStream = objFso.CreateTextFile(strPath,True)
    '在文本中寫入字符
    objStream.Write "This is Test !"  vbCrLf  "hello word !"
    '以只讀的方式打開文件
    Set objStream = objFso.OpenTextFile(strPath,1,true)
    '讀取文件時跳過5個字符;或者跳過當前行,讀取下一行
    objStream.Skip(5)
    'objStream.SkipLine
     '讀取文本內(nèi)容
    msgbox objStream.ReadAll
    '關(guān)閉TextStream對象
    objStream.Close
End Sub

備注:兩者的區(qū)別是:Skip——跳過指定的幾個字符;SkipLine——跳過一行

二、TextStream對象的屬性

TextStream 的屬性提供有關(guān)文件內(nèi)文件指針當前位置的信息,如表9所示。注意,所有的屬性是只讀的。

表10  TextStream 對象的屬性及說明

屬性

說明

AtEndOfLine

如果文件位置指針在文件中一行的末尾則返回 True

AtEndOfStream

如果文件位置指針在文件的末尾則返回 True

Column

從 1 開始返回文件中當前字符的列號

Line

從 1 開始返回文件中當前行的行號”

AtEndOfLine 和 AtEndOfStream 屬性僅對以 iomode 參數(shù)為 ForReading 的方式打開的文件可用,否則將會出錯。

AtEndOfLine及AtEndOfStream的使用

示例:

Dim strPath,strText
strPath = "C:/testing.txt"
'調(diào)用函數(shù)
Call CreateFile(strPath)
 
Sub CreateFile(strPath)
    Dim objFso,objStream,str
    '創(chuàng)建FileSystemObject對象
    Set objFso = CreateObject("Scripting.FileSystemObject")
    '以只讀的方式打開文件,如果文件不存在則創(chuàng)建它
    Set objStream = objFso.OpenTextFile(strPath,1,true)
    '如果當前的指針不在行末,則讀取文本內(nèi)容
    Do While objStream.AtEndOfLine > true
    ‘Do While objStream.AtEndOfStream > true
       str = str + objStream.Read(1)
    Loop
    msgbox str
     '關(guān)閉TextStream對象
    objStream.Close
End Sub

備注:兩者間的區(qū)別是:AtEndOfLine——讀取到當前文本行的末尾;AtEndOfStream——讀取到整個文本的末尾

Column及Line的使用

示例:

Sub TestTextStream(strPath)
  Dim objFso,objTStream,str
    Set objFso = CreateObject("Scripting.FileSystemObject")
    '以只讀的方式打開文件
    Set objTStream = objFso.OpenTextFile(strPath,1)
    '如果當前的指針不在整個文檔的末尾,讀取文本的所有內(nèi)容
  Do While objTStream.AtEndOfStream > true
          objTStream.ReadAll
         str = str + "共有"  objTStream.Line  "行數(shù)據(jù),光標最后所在列號為:"  objTStream.Column  vbCrLf
  Loop
    '打印信息
print str
End Sub

以下是補充資料:

FSO包含的常見對象有:

對象/集合

描述

Drive

包含儲存設(shè)備的信息,包括硬盤、光驅(qū)、ram盤、網(wǎng)絡(luò)驅(qū)動器

Drives

提供一個物理和邏輯驅(qū)動器的列表

File

檢查和處理文件

Files

提供包含在文件夾內(nèi)的所有文件的列表

Folder

檢查和處理文件夾

Folders

提供在 Folder 內(nèi)的所有文件夾的列表

TextStream

對象。用來讀寫文本文件。

用FSO對象模型來編程,使用CreateObject方法來創(chuàng)建FileSystemObject對象,例如:  

Dim fso
Set fso = wscript.createobject("scripting.filesystemobject")

在這個示例中,Scripting 是類型庫的名字,而 FileSystemObject 則是想要創(chuàng)建的對象的名字。至此我們獲取了fso對象,接下來就可以使用fso對象了。如果要釋放的話也很簡單,例如:

Set fso = nothing

FileSystemObject對象總共一個屬性即Drives

描述:獲得所有可用驅(qū)動器的集合。
說明:無論是否本地磁盤、插入媒體、可移動媒體驅(qū)動器都顯示在 Drives 集合中。
具體示例代碼如下所示:獲取本計算機上所有的磁盤的盤符  

Set fso = CreateObject("Scripting.FileSystemObject")
Set Drivers = fso.Drives
For Each Driver in Drivers
Msgbox Driver.DriveLetter '輸出計算機上所有的磁盤盤符
Next 

方法:(僅常用的方法)

CreateFile

描述:創(chuàng)建一個空文件
語法:object. CreateTextFile(strFile,blnOverWrite)
參數(shù):strFile為文件名稱
blnOverWrite為Ture強制覆蓋,為False不覆蓋

示例:創(chuàng)建文件C:\test.txt

Dim Fso
'創(chuàng)建FileSystemObject對象
Set Fso = CreateObject("Scripting.FileSystemObject")
'使用CreateTextFile創(chuàng)建文件,不覆蓋存在的文件
Fso.CreateTextFile "C:\test.txt",False
'覆蓋存在的文件
Fso.CreateTextFile "C:\test.txt",True

CreateFolder

描述:創(chuàng)建一個空的文件夾
語法:object. CreateFolder(strFolder)
參數(shù):strFolder為想要創(chuàng)建的文件夾名稱
示例:創(chuàng)建文件夾: c:\test

Dim Fso
'創(chuàng)建FileSystemObject對象
Set Fso = CreateObject("Scripting.FileSystemObject")
'使用MyFolder創(chuàng)建文件夾
Fso.CreateFolder("c:\test")

DeleteFile

描述:刪除一個文件
語法:object. DeleteFile (strFile,force)
參數(shù):strFile為想要刪除的文件。組成部分中可用通配符。
force如果要刪除只讀文件,則該值為 True;否則為 False(默認)

示例:刪除文件: c:\test.txt   

Dim Fso
'創(chuàng)建FileSystemObject對象
Set Fso = CreateObject("Scripting.FileSystemObject")
'使用DeleteFile刪除指定文件
Fso.DeleteFile("c:\test.txt")
'強制刪除只讀的文件
Fso.DeleteFile "c:\test.txt",True

DeleteFolder

描述:刪除一個文件夾
語法:object. DeleteFolder(strFolder,force)
參數(shù):strFolder為想要刪除的文件夾名稱。組成部分中可用通配符。
force如果要刪除只讀文件夾,則該值為 True;否則為 False(默認)

示例:刪除文件夾: c:\test

Dim Fso
'創(chuàng)建FileSystemObject對象
Set Fso = CreateObject("Scripting.FileSystemObject")
'使用DeleteFile刪除指定文件
Fso.DeleteFolder("c:\test")
'強制刪除只讀的文件
Fso.DeleteFolder "c:\test",True

FileExists

描述:判斷指定文件是否存在
語法:object. FileExists (strFile)
參數(shù):strFile為指定的文件
示例:檢查文件: c:\test.txt是否存在

Dim Fso
'創(chuàng)建FileSystemObject對象
Set Fso = CreateObject("Scripting.FileSystemObject")
'使用FileExists判斷指定文件是否存在
MsgBox Fso.FileExists("c:\test.txt")

FolderExist

描述:判斷指定文件夾是否存在
語法:object. FolderExists (strFolder)
參數(shù):strFolder為指定的文件夾
示例:檢查文件夾: c:\test是否存在

Dim Fso
'創(chuàng)建FileSystemObject對象
Set Fso = CreateObject("Scripting.FileSystemObject")
'使用FolderExists判斷指定文件夾是否存在
MsgBox Fso.FolderExists("c:\test")

CopyFile

描述:將一個或多個文件從某位置復(fù)制到另一位置
語法:object.CopyFile "source", "destination"[, overwrite]
參數(shù):source必選項。表示指定文件的路徑。組成部分中可用通配符。
destination必選項。表示目標位置路徑
overwrite可選項。Boolean 值表明是否覆蓋現(xiàn)有文件。如果是 True,則覆蓋文件;如果是 False,則不覆蓋現(xiàn)有文件。默認值是 True

示例:將 c:\test.txt文件復(fù)制到D:\下

Dim Fso
'創(chuàng)建FileSystemObject對象
Set Fso = CreateObject("Scripting.FileSystemObject")
'使用CopyFile復(fù)制文件到另一個位置,False不覆蓋已存在文件
Fso.CopyFile "c:\test.txt","D:\",False
'True覆蓋已存在文件
Fso.CopyFile "c:\test.txt","D:\",True

示例:將 c:\下所有的txt文件復(fù)制到D:\下

Dim Fso
'創(chuàng)建FileSystemObject對象
Set Fso = CreateObject("Scripting.FileSystemObject")
'使用*.txt,可以同時將多個文件復(fù)制到另一個位置,False不覆蓋已存在文件
Fso.CopyFile "c:\*.txt","D:\",False
'True表示覆蓋已存在文件
Fso.CopyFile "c:\*.txt","D:\",True

CopyFolder

描述:將文件夾從某位置復(fù)制到另一位置

語法:object. CopyFolder "source", "destination"[, overwrite]

參數(shù):source必選項。表示指定文件夾的路徑。組成部分中可用通配符。
destination必選項。表示目標位置的路徑
overwrite可選項。Boolean 值表明是否覆蓋現(xiàn)有文件夾。
如果是 True,則覆蓋文件夾;如果是 False,則不覆蓋現(xiàn)有文件夾。默認值是 True

示例:將 c:\test文件夾復(fù)制到D:\下

Dim Fso
'創(chuàng)建FileSystemObject對象
Set Fso = CreateObject("Scripting.FileSystemObject")
'使用CopyFile復(fù)制文件到另一個位置,默認為True覆蓋已存在文件
Fso.CopyFolder "c:\test","D:\"
'False不覆蓋已存在文件
Fso.CopyFolder "c:\test","D:\",False

MoveFile

描述:將一個或多個文件從某位置移動到另一位置
語法:object.MoveFile source, destination
參數(shù):source必選項。要移動的文件的路徑。組成部分中可用通配符。
destination必選項。指定路徑,表示要將文件移動到該目標位置。
destination 參數(shù)不能包含通配符。
示例:將 c:\test文件夾移動到D:\下

Dim Fso
'創(chuàng)建FileSystemObject對象
Set Fso = CreateObject("Scripting.FileSystemObject")
'使用MoveFile移動文件到另一個位置
Fso.MoveFile "c:\test.txt","D:\"

MoveFolder

描述:將一個或多個文件夾從某位置移動到另一位置
語法:object.MoveFolder source, destination
參數(shù):source必選項。要移動的文件夾的路徑。組成部分中可用通配符。
destination必選項。指定路徑,表示要將文件夾移動到該目標位置。

示例:

Dim Fso
'創(chuàng)建FileSystemObject對象
Set Fso = CreateObject("Scripting.FileSystemObject")
'使用MoveFolder移動文件夾到另一個位置
Fso.MoveFolder "c:\test","D:\"

GetExtensionName

描述:獲取文件后綴名
語法:object.MoveFolder source, destination
參數(shù):source必選項。要移動的文件夾的路徑。組成部分中可用通配符。
destination必選項。指定路徑,表示要將文件夾移動到該目標位置。
示例:獲取”c:\test.txt”文件后綴名

Dim Fso
Dim GetExtensionName
'創(chuàng)建FileSystemObject對象
Set Fso = CreateObject("Scripting.FileSystemObject")
'使用GetExtensionName獲取文件后綴名
GetExtensionName = fso.GetExtensionName("c:\test.txt")
MsgBox GetExtensionName '輸出txt

GetBaseName

描述:獲取文件當前所在文件夾
語法:object.GetBaseName Path
參數(shù):Path必選項。文件路徑名。
示例:獲取”c:\test.txt”文件名稱

Dim Fso
Dim GetBaseName
'創(chuàng)建FileSystemObject對象
Set Fso = CreateObject("Scripting.FileSystemObject")
'使用GetBaseName獲取文件的文件名稱
GetBaseName = Fso.GetBaseName("c:\test\test.txt")
MsgBox GetBaseName '輸出test

GetParentFolderName

描述:將一個或多個文件夾從某位置移動到另一位置
語法:object.GetParentFolderName Path
參數(shù):Path必選項。文件路徑名。
示例:獲取”c:\test.txt”文件所在的文件夾

Dim Fso
Dim GetParentFolderName
'創(chuàng)建FileSystemObject對象
Set Fso = CreateObject("Scripting.FileSystemObject")
'使用GetParentFolderName獲取文件當前所在的文件夾
GetParentFolderName = Fso.GetParentFolderName("c:\test\test.txt")
MsgBox GetParentFolderName '輸出c:\test

好了這篇文章就介紹到這了,看完這篇文章基本上對FileSystemObject就比較了解了。

您可能感興趣的文章:
  • VBS中FileSystemObject對象詳解(完整版)
  • VBS教程:對象-FileSystemObject 對象
  • VBS教程:屬性-FileSystem 屬性
  • VB FileSystemObject對象實例詳解

標簽:四平 文山 海口 邢臺 西安 鶴壁 銅川 湖州

巨人網(wǎng)絡(luò)通訊聲明:本文標題《VBS基礎(chǔ)篇 - FileSystemObject對象詳解》,本文關(guān)鍵詞  VBS,基礎(chǔ),篇,FileSystemObject,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《VBS基礎(chǔ)篇 - FileSystemObject對象詳解》相關(guān)的同類信息!
  • 本頁收集關(guān)于VBS基礎(chǔ)篇 - FileSystemObject對象詳解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    99久久精品免费看国产 | 欧美日韩午夜精品| 在线综合亚洲欧美在线视频 | 伊人开心综合网| 国产精品乡下勾搭老头1| 欧美日韩国产欧美日美国产精品| 18欧美乱大交hd1984| 极品美女销魂一区二区三区 | 韩国中文字幕2020精品| 欧美疯狂性受xxxxx喷水图片| 国产精品天天摸av网| 久久99久久99| 精品国产乱码久久久久久牛牛| 日av在线不卡| 欧美激情自拍偷拍| 99riav一区二区三区| 久久久久久久久久久黄色| 国产成人小视频| 国产精品天美传媒沈樵| 欧美不卡一区二区三区| 亚洲欧美日韩国产中文在线| 91视频在线观看| 久久国产精品区| 偷窥少妇高潮呻吟av久久免费| 精品久久久久久无| 91麻豆自制传媒国产之光| 午夜精品福利一区二区三区av| 欧美tk—视频vk| 欧美三级韩国三级日本三斤 | 色综合中文字幕国产 | 欧美久久高跟鞋激| 丁香网亚洲国际| 黄色小说综合网站| 日本伊人色综合网| 亚洲精品国产精品乱码不99| 欧美精品一区二区三区高清aⅴ| 91蝌蚪porny| 波多野结衣精品在线| 九九九久久久精品| 日本亚洲电影天堂| 日韩国产高清影视| 日韩激情视频在线观看| 日韩在线一区二区| 免费在线欧美视频| 狠狠久久亚洲欧美| 国产精品丝袜91| av网站免费线看精品| 日本乱码高清不卡字幕| 色老头久久综合| 日韩欧美www| 欧美成人国产一区二区| 国产色产综合色产在线视频| 亚洲精品成人精品456| 久久er99精品| 欧洲精品中文字幕| 国产精品女人毛片| 精品一区二区三区在线观看国产 | 另类小说一区二区三区| 国产成人啪免费观看软件| 日本久久一区二区| 久久精品网站免费观看| 亚洲国产美女搞黄色| 国产精品88888| 91精品国产综合久久蜜臀| 亚洲另类在线一区| 色综合天天性综合| 亚洲一线二线三线视频| 91黄色在线观看| 美腿丝袜一区二区三区| 国产成人av电影在线播放| 一区二区高清视频在线观看| 日韩国产一区二| 色综合天天综合网天天看片| 中文字幕av一区二区三区免费看 | 久久精品日韩一区二区三区| 亚洲综合一区二区三区| 在线亚洲欧美专区二区| 亚洲综合在线观看视频| www.av亚洲| 亚洲制服欧美中文字幕中文字幕| 国产精品99久久久久| 国产亲近乱来精品视频| 国产福利不卡视频| 亚洲日本va午夜在线电影| 成人av在线电影| 日本高清不卡aⅴ免费网站| 国产一区二区不卡| 亚洲综合一区二区三区| 中文字幕免费一区| 国产欧美一区二区精品忘忧草| 欧美一区二区日韩| 成人激情图片网| 欧美激情一区在线观看| 精品一区二区三区香蕉蜜桃| 欧美一卡二卡三卡四卡| 五月婷婷久久综合| 91精品国产综合久久香蕉的特点| 亚洲丶国产丶欧美一区二区三区| 高清国产一区二区三区| 成人动漫在线一区| 一区二区三区中文字幕电影| 99久久综合国产精品| 日韩一区二区三区电影| 在线不卡a资源高清| 日韩一区二区三区视频在线| 美女网站一区二区| 欧美日韩中文国产| 亚洲成人中文在线| 亚洲国产一区二区视频| 日韩精品成人一区二区三区| 欧美二区三区91| 久久亚洲精华国产精华液| 日韩美女久久久| 国产亚洲欧美日韩日本| 日韩女优电影在线观看| 91精品国产福利在线观看| 欧美日韩中字一区| 91精品国产综合久久精品性色 | 色天使色偷偷av一区二区| 99re热这里只有精品免费视频| 成人午夜电影网站| 欧美日韩综合在线| 欧美成人高清电影在线| 国产精品污网站| 亚洲综合激情小说| 韩国精品主播一区二区在线观看| 国产乱子轮精品视频| 一本到不卡免费一区二区| 欧美性淫爽ww久久久久无| 欧美日本一道本| 肉色丝袜一区二区| 久久久综合视频| 丝袜诱惑制服诱惑色一区在线观看| 日本精品一级二级| 自拍偷拍亚洲激情| av网站一区二区三区| 国产精品国模大尺度视频| 久久99精品国产麻豆婷婷| 91精品国产91久久久久久最新毛片| 欧美日韩精品二区第二页| 欧美一级xxx| 国产精品久久久久久久久久久免费看 | 色综合久久中文字幕综合网| 日韩av电影免费观看高清完整版| 成人app在线| 国内一区二区在线| 天堂在线亚洲视频| 欧美日韩国产一级二级| 欧美亚洲日本一区| 在线不卡免费av| 国产a区久久久| 亚洲国产精品人人做人人爽| 一区二区三区在线视频免费| 亚洲影视资源网| 成人综合婷婷国产精品久久蜜臀 | 樱桃视频在线观看一区| 久久免费午夜影院| 亚洲一二三级电影| 国产精品美女久久久久高潮| 7777精品伊人久久久大香线蕉最新版 | 麻豆一区二区在线| 欧美一级午夜免费电影| 麻豆国产一区二区| 国产欧美日韩在线观看| 国产精品资源网站| 亚洲美女免费在线| 91精品国产综合久久香蕉的特点 | 欧美午夜精品一区二区三区 | 午夜视频久久久久久| 久久久久久久av麻豆果冻| 福利一区在线观看| 日韩中文字幕av电影| 亚洲丝袜制服诱惑| 精品久久人人做人人爰| 99国产精品久久久久| 色综合天天综合网国产成人综合天| 免费av网站大全久久| 亚洲图片欧美综合| 日韩精品五月天| 国产成人免费9x9x人网站视频| 不卡av电影在线播放| 91亚洲资源网| 成人久久18免费网站麻豆| 美女视频一区二区三区| 26uuu另类欧美| 欧美中文字幕一区二区三区亚洲| 日韩高清在线一区| 精品国产sm最大网站| 精品理论电影在线| 久久久综合精品| 色婷婷av一区| 蜜臀91精品一区二区三区| 亚洲欧美日韩一区| 欧美精品一区二区三区蜜臀| 久久99国产乱子伦精品免费| 久久久久亚洲蜜桃| 欧美不卡123| 久久免费的精品国产v∧| 色婷婷av一区二区三区软件 | www.亚洲精品|