在某些場合,我們需要確定特定目錄下特定文件是否存在。VB自帶的DIR函數可以查找符合條件的文件(在VB編程樂園已經有過介紹),但用起來略顯復雜。這裡介紹一種較為簡單的方法。
API函數的SHFileExists的功能,從其名字來看,應該是SearchFileExists,亦即查找存在的文件。用它來檢測文件存在與否是很容易的。試看下面的例子。
在標准EXE工程放置兩個文本框和一個按鈕,輸入如下代碼:
PrivateDeclareFunctionSHFileExistsLib"shell32"Alias"#45"(ByValszPathAsString)AsLong
PrivateSubCommand1_Click()
DimiAsInteger
i=Str$(SHFileExists(Text1.Text))
Ifi=0Then'Str$值只有兩種可能,0或者1
Text2.Text="文件不存在"
Else
Text2="文件存在"
EndIf
EndSub
按F5運行程序,在Text1輸入要查找的文件的驅動器名、路徑和名稱,然後點擊按鈕,Text2會報告文件是否存在。
值得一提的是,SHFileExists函數支持對任何文件的查找,同時也支持對文件夾的查找。->