在VB编程中,我们如何删除一个指定的文件,或者文件夹呢?
本文,介绍两种方法,详细的介绍如何实现删除文件和文件夹,并对两种方法的区别做一个说明。
一、删除文件的方法
方法1:
使用kill方法删除文件
语法:
kill filename
说明:filename为文件的路径
方法2:
使用DeleteFile方法删除文件
语法:
Dim fs As Object Set fs = CreateObject("Scripting.FileSystemObject") fs.DeleteFile filename
说明:
filename为文件的路径
使用以上两种方法删除文件时,可以使用"*"和"?"通配符,以实现批量删除有一定规律的文件。
例如:
kill "E:\test\*.txt"
上面这个代码可以删除E:\test文件夹下所有txt格式的文件。
二、删除文件夹
方法1:
使用RmDir方法删除文件夹
语法:
RmDir folderName
说明:
folderName为文件夹路径
方法2:
使用deletefolder删除指定文件夹
Dim fs As Object Set fs = CreateObject("Scripting.FileSystemObject") fs.deletefolder folderName
说明:
folderName为文件夹路径
使用方法1和方法2来删除文件夹时的区别:
在使用RmDir来删除文件夹时,只能删除一个空的文件夹,如果文件夹内有文件或者文件夹,则删除会出错。
而使用deletefolder删除文件夹时,则不会存在上述问题。它将会连同文件夹内所有文件,全部删除。
删除文件和文件夹时注意事项:
当删除文件和文件夹时,如果文件处于打开或者文件名不正确时,删除可能会发生错误。此时可以使用on error go to语句来实现错误跳转。
举例:
通过以下这个例子,掌握删除文件和删除文件夹的方法,以及两种方法的区别。
界面如下所示:
代码如下所示:
Option ExplicitDim str$Private Sub Form_Load() '设置测试文件目录,请根据自己的文件位置修改 str = "C:\Users\Administrator\Desktop\新建文件夹"End Sub'用kill删除指定文件Private Sub Command1_Click() '删除该目录下的test.txt文件 Kill str & "\新建文本文档.txt"End Sub'用kill删除所有文件Private Sub Command2_Click() '删除该目录下所有文件 Kill str & "*.*"End Sub'用deletefile删除指定文件Private Sub Command3_Click() Dim fs As Object Set fs = CreateObject("Scripting.FileSystemObject") fs.DeleteFile str & "\新建文本文档.txt"End Sub'用deletefile删除所有文件Private Sub Command4_Click() Dim fs As Object Set fs = CreateObject("Scripting.FileSystemObject") fs.DeleteFile str & "\*.*"End Sub'用kill删除指定文件夹Private Sub Command5_Click() RmDir str '注意,此方法只能删除空的文件夹End Sub'用deletefolder删除文件夹Private Sub Command6_Click() Dim fs As Object Set fs = CreateObject("Scripting.FileSystemObject") fs.deletefolder str '注意,此方法可以删除非空文件夹End Sub
运行程序,然后在相应的文件夹内放置文件或者文件夹,再点击各按钮测试,查看效果。