怎樣判斷文件夾中是否存在該文件呢?
用Dir()嗎?
我用Dir(FileName)好像沒有得到我想要的結果,
有沒有其他的函數呀?
用Dir()嗎?
我用Dir(FileName)好像沒有得到我想要的結果,
有沒有其他的函數呀?
解决方案 »
- 如何对字段值进行进一取整的运算?
- 不使用注册表访问的API判断某个程序是否被映像劫持——LdrQueryImageFileExecutionOptions
- 在Form_Load()中加载图片,并设置图片大小和位置
- 程序怎样知道本机的打印机是网络的还是本地的?
- 求助(在VB中如何统计功能)
- 弹出打印机缺纸后,我的软件主窗体失去焦点了,如何解决??
- insallsheild怎样添加运用程序的桌面快捷方式?
- 怎样在VB中连接连接数据库,(主要是连接Access数据库)?
- 如何用GDI让一个矩形转动一定角度,要求一边靠边左上角呈45度
- 自己編的小程序大家來看看!
- 莫名其妙的安装问题!!急
- 如何将一个已有数据的RECORDSET写到结构完全一样的数据表中,在线等急
本示例使用 Dir 函数来检查某些文件或目录是否存在。在 Macintosh 计算机上,默认驱动器名称是 “HD” ,并且路径部分由冒号取代反斜线隔开。而且 Microsoft Windows 的通配符在 Mac 中可以作为有效字符出现在文件名中。也可以使用 MacID 函数来指定文件组。Dim MyFile, MyPath, MyName' 返回“WIN.INI” (如果该文件存在)。
MyFile = Dir("C:\WINDOWS\WIN.ini") ' 返回带指定扩展名的文件名。如果超过一个 *.ini 文件存在,
' 函数将返回按条件第一个找到的文件名。
MyFile = Dir("C:\WINDOWS\*.ini")' 若第二次调用 Dir 函数,但不带任何参数,则函数将返回同一目录下的下一个 *.ini 文件。
MyFile = Dir' 返回找到的第一个隐式 *.TXT 文件。
MyFile = Dir("*.TXT", vbHidden)' 显示 C:\ 目录下的名称。
MyPath = "c:\" ' 指定路径。
MyName = Dir(MyPath, vbDirectory) ' 找寻第一项。
Do While MyName <> "" ' 开始循环。
' 跳过当前的目录及上层目录。
If MyName <> "." And MyName <> ".." Then
' 使用位比较来确定 MyName 代表一目录。
If (GetAttr(MyPath & MyName) And vbDirectory) = vbDirectory Then
Debug.Print MyName ' 如果它是一个目录,将其名称显示出来。
End If
End If
MyName = Dir ' 查找下一个目录。
Loop
BackupName = Replace(str(Filedate), "/", "-")
FileName = App.Path + "\Backup\" + BackupName + ".mdb"
If IsNull(Dir(FileName)) = True Then
MsgBox "File is not exist!", , "Waring!"
Exit Sub
Else
SHFileOp.wFunc = FO_COPY
SHFileOp.pFrom = FileName
SHFileOp.pTo = App.Path + "\info.mdb"
SHFileOp.fFlags = FOF_ALLOWUNDO + FOF_NOCONFIRMMKDIR
Call SHFileOperation(SHFileOp)
End If我的FileName 調試時值="..\backup\2004-3-18.mdb"
可是不管文件是否存在,dir(Filename)都不能正確判斷,
但是如果寫成Dir("..\backup\2004-3-18.mdb")這樣才行
為啥///?????
'判断某个文件是否存在.
'函数:FileCheck
'参数:FileName 目标文件名.
'返回值:=TRUE 存在,=FALSE 不存在.
Public Function FileCheck(Filename As String) As Boolean
Dim FileID As Long
On Error Resume Next
FileID = FreeFile()
Open Filename For Input As #FileID
Close #FileID
FileCheck = (Err.Number = 0)
Err.Clear
End Function
Null 值指出 Variant 不包含有效数据。Null 与 Empty 不同,后者指出变量尚未初始化。Null 与长度为零的字符串 (““) 也不同,长度为零的字符串指的是空串
'--------------------------------
也就是说IsNull不能判断""这样的空字串!!!所以每次都只会返回Flash
'filename not exist
else
'filename exist
end if
2.然后声明变量:
Dim Fso As FileSystemObject
3.调用函数进行判断:
If Fso.FileExists(文件名1) Then '若该文件存在
...
End If
Set Fso = New FileSystemObject
If Dir(TmpFile) <> "" Then Kill TmpFile '讀取Excel臨時範本的路徑,並刪除此文件
If Dir(App.Path & "\RunCard\ProductBankIn.xls") = "" Then '找出原始Excel文檔
MsgBox "找不到Excel檔." & App.Path & "\RunCard\ProductBankIn.xls" & " ,無法列印,請檢查是否存在!!", vbInformation, "提示"
Exit Function
End If
On Error Resume Next
Call GetAttr(sFilename)
FileExists = (Err.Number = 0)
End Function