楼上说的都对,但是只说了语法,没说用途,需要强调的是,Dir函数在VB中最主要的用途是确定文件是否存在,不存在就返回空字符串,例如
成都创新互联主要从事成都网站建设、成都网站设计、网页设计、企业做网站、公司建网站等业务。立足成都服务柳江,十多年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18982081108
if dir("c:\1.txt")="" then '如果c:\1.txt不存在,那么...
API函数 PathFileExists
声明
Private Declare Function PathFileExists Lib "shlwapi.dll" Alias "PathFileExistsA" (ByVal pszPath As String) As Long
PathFileExists("一个文件或文件夹") 如果存在 返回1 不存在返回0
If PathFileExists("C:\123") then ...
Dir不准确
如果有下列目录结构
D盘中有文件夹 test 文件夹中有testFile.txt文件
还有空文件夹 testEmpty
则
Dir("d:\test\testFIie.txt") 返回 testFile.txt
Dir("d:\test\testFIie11111111.txt") 返回 ""
Dir("d:\test\") 返回 testFile.txt (返回此文件夹第一个文件)
Dir("d:\testEmpty") 返回空
dir("一个不存在的文件夹")返回空
也就是说如果一个文件夹下没有文件(不管有没有子文件夹)则 dir("一个文件夹")就返回空
所以不能通过 dir("一个文件夹")来判断一个文件夹是否存在。
只能调用api函数
Private Declare Function PathFileExists Lib "shlwapi.dll" Alias "PathFileExistsA" (ByVal pszPath As String) As Long
PathFileExists("一个文件或文件夹") 如果存在 返回1 不存在返回0
获取方法,参考实例如下:
'获取路径名各部分: 如: c:\dir1001\aaa.txt
'获取路径路径 c:\dir1001\
Public Function GetFileName(FilePathFileName As String) As String '获取文件名 aaa.txt
On Error Resume Next
Dim i As Integer, J As Integer
i Len(FilePathFileName)
J InStrRev(FilePathFileName, "\")
GetFileName Mid(FilePathFileName, J + 1, i)
End Function
''获取路径路径 c:\dir1001\
Public Function GetFilePath(FilePathFileName As String) As String '获取路径路径 c:\dir1001\
On Error Resume Next
Dim J As Integer
J InStrRev(FilePathFileName, "\")
GetFilePath Mid(FilePathFileName, 1, J)
End Function
'获取文件名但不包括扩展名 aaa
Public Function GetFileNameNoExt(FilePathFileName As String) As String '获取文件名但不包括扩展名 aaa
On Error Resume Next
Dim i As Integer, J As Integer, k As Integer
i Len(FilePathFileName)
J InStrRev(FilePathFileName, "\")
k InStrRev(FilePathFileName, ".")
If k 0 Then
GetFileNameNoExt Mid(FilePathFileName, J + 1, i - J)
Else
GetFileNameNoExt Mid(FilePathFileName, J + 1, k - J - 1)
End If
End Function
'===== '获取扩展名 .txt
Public Function GetFileExtName(FilePathFileName As String) As String '获取扩展名 .txt
On Error Resume Next
Dim i As Integer, J As Integer
i Len(FilePathFileName)
J InStrRev(FilePathFileName, ".")
If J 0 Then
GetFileExtName ".txt"
Else
GetFileExtName Mid(FilePathFileName, J, i)
End If
End Function
先imports
system.runtime.interopservices
然后class
xxxx
public
shared
function
zlibversion()
as
string
end
function...'在里面调用zlibversion()即可调用zlib1.dll的zlibversion方法,其他dll你根据接口灵活定义好了end
class