VBS中FileSystemObject对象详解(完整版)

2019-01-15 19:09:06王旭

End Sub

GetBaseName、GetFileName及GetExtensionName的使用

方法名:GetBaseName(filespec)
说明:返回字符串,文件 (不带扩展名), 或者提供的路径说明中的文件夹。
方法名:GetExtensionName(filespec)
说明:返回字符串,该字符串包含路径最后一个组成部分的扩展名。
方法名:GetFileName(pathspec)
说明:返回指定路径(不是指定驱动器路径部分)的最后一个文件或文件夹。
示例:

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)
说明:返回与指定路径中某文件相应的 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)