这是有关Microsoft脚本运行时库的一系列提示中的第二个提示。 第一个技巧与驱动器有关,而该技巧将集中于PC中的文件夹(目录)以及从中检索信息以及如何操作它们的各种方法。 该代码应具有自我解释性,并且基本上是文件本身。 如果对此主题有任何疑问,请随时提出。
'Accessing Folder Properties
Dim fso As FileSystemObject, fldr As Folder
Set fso = New Scripting.FileSystemObject 'OR
'Set fso = CreateObject("Scripting.FileSystemObject")
'Creates an Instance of a Folder
Set fldr = fso.GetFolder("C:\Windows\System32")
Debug.Print "Folder Properties of " & fldr.Path
Debug.Print " Folder Name: " & fldr.Name
Debug.Print " Folder Size: " & FormatNumber(fldr.Size, 0, vbFalse, vbFalse, vbTrue) & " bytes"
Debug.Print " Folder Created: " & fldr.DateCreated
Debug.Print " Folder Path: " & fldr.Path
Debug.Print " Folder Last Modified: " & fldr.DateLastModified
Debug.Print " Folder Last Accessed: " & fldr.DateLastAccessed
Debug.Print " Folder Drive: " & fldr.Drive
Debug.Print " Files in Folder: " & FormatNumber(fldr.Files.Count, 0, vbFalse, vbFalse, vbTrue) & " files"
Debug.Print " Is this a Root Folder: " & fldr.IsRootFolder
Debug.Print " Parent Folder: " & fldr.ParentFolder
Debug.Print " Folder Path: " & fldr.Path
'Could also use the GetBaseName Method of the File System Object
Debug.Print " Folder Short Name: " & fldr.ShortName
Debug.Print " Folder Short Path: " & fldr.ShortPath
Debug.Print " Number of Sub-Folders: " & fldr.SubFolders.Count
Debug.Print " Folder Type: " & fldr.Type
Debug.Print
'Code that creates a Temporary Folder (fso previously created)
Dim msTemporaryFolder As String
msTemporaryFolder = fso.GetSpecialFolder(TemporaryFolder).Path & "\"
Debug.Print msTemporaryFolder
Debug.Print
'Code to see if a Folder exists (fso previously created)
'Could also use the FolderExists Method of the File System Object
If fso.FolderExists("C:\Test") Then
Debug.Print "Folder exists"
Else
Debug.Print "Folder does not exist"
End If
Debug.Print
'Code to create a Folder (fso previously created)
'Could also use the CreateFolder Method of the File System Object
Set fldr = fso.CreateFolder("C:\Windows\System32\Temp Extraction Area")
Debug.Print "Created Folder " & fldr.Name
'Code to Delete a Folder (fso previously created)
'Could also use the DeleteFolder Method of the File System Object
Set fldr = fso.GetFolder("C:\Folder 1\Folder 2\Folder to Delete")
fldr.Delete True '"Folder to Delete" is Deleted
'Code to Move a Folder (fso previously created)
'Could also use the MoveFolder Method of the File System Object
Set fldr = fso.GetFolder("C:\Folder1\Folder2\Folder3")
fldr.Move "C:\" '"Folder3" moved to C:\
'Code to Copy a Folder (fso previously created)
'Could also use the CopyFolder Method of the File System Object
Set fldr = fso.GetFolder("C:\Folder1\Folder2")
fldr.Copy "C:\List", True 'Copies "Folder2" to C:\List
输出:
Folder Properties of C:\WINDOWS\system32
Folder Name: system32
Folder Size: 888,994,639 bytes
Folder Created: 10/1/2005 2:46:52 AM
Folder Path: C:\WINDOWS\system32
Folder Last Modified: 2/5/2008 7:04:21 PM
Folder Last Accessed: 2/5/2008 7:04:22 PM
Folder Drive: C:
Files in Folder: 2,309 files
Is this a Root Folder: False
Parent Folder: C:\WINDOWS
Folder Path: C:\WINDOWS\system32
Folder Short Name: System32
Folder Short Path: C:\Windows\System32
Number of Sub-Folders: 50
Folder Type: File Folder
C:\DOCUME~1\Armund\LOCALS~1\Temp\
Folder exists
Created Folder Temp Extraction Area
From: https://bytes.com/topic/access/insights/768913-microsoft-scripting-runtime-2-a