我需要检查一个目录中是否存在一个文件。我想到的两个选项是使用regex(
vbscript.regexp
)以确定文件是否存在。另一种选择是使用
FileSystemObject
的
FileExists
方法。
使用regex的缺点是,我需要遍历目录中的每个文件,并根据每个文件名测试regex。其次,regex方法在将来可能更难维护(regex)。但是,我需要测试两个regex,因为同一个文件可能有不同的版本。对于其中一个文件,文件名中有一个描述部分经常更改(好吧,这是个谎言——它在某个随机循环中更改),因此使用regex将有助于匹配文件,而不管这个部分是不是更健壮的代码。
使用
否存在
,我可以同时测试两个文件,并且根据每次检查返回的布尔值,可以继续处理。使用的相关缺点
否存在
是不支持通配符匹配,所以在考虑带有描述的文件名时,始终需要更新此项以反映新的描述=更多的维护问题。然而,它更容易掌握和改变。
文件名格式:
Data_Sheet_<yyyymmdd>_D.xlsx
Data_Sheet_<yyyymmdd>_D_<some description>.xlsx
这个
<yyyymmdd>
文件名的一部分将由文件所在的当前文件夹决定。
问题:使用ReGEX还是简单的文件来查找文件会更好吗?
我将在Excel vba宏中使用上述任一方法。