Private Sub Command1_Click()'错误 Print Mid$("D:\aa\abc.exe", InStr("D:\aa\abc.exe", "\") + 1) End Sub
To xxlroad(土八路):应该用InStrRev吧
用InStrRev查找路径中最后一个"\"的位置,截取其后的字符串并去掉最后的".exe"即可 当然,如果还有其他形式的扩展名,那本程序就要略加修改了,不过思路是一样的. Option ExplicitPrivate Sub Command1_Click() Dim filepath As String Dim intpos As Integer
CommonDialog1.ShowOpen If CommonDialog1.FileName <> "" Then filepath = CommonDialog1.FileName intpos = InStrRev(filepath, "\") MsgBox Mid(filepath, intpos + 1, Len(filepath) - intpos - 4) End Sub
Print Mid$("D:\aa\abc.exe", InStr("D:\aa\abc.exe", "\") + 1)
End Sub
当然,如果还有其他形式的扩展名,那本程序就要略加修改了,不过思路是一样的.
Option ExplicitPrivate Sub Command1_Click()
Dim filepath As String
Dim intpos As Integer
CommonDialog1.ShowOpen
If CommonDialog1.FileName <> "" Then filepath = CommonDialog1.FileName
intpos = InStrRev(filepath, "\")
MsgBox Mid(filepath, intpos + 1, Len(filepath) - intpos - 4)
End Sub
strzf=right(filename,lenzf-1)
要想具有通用性的话,应该用InStrRev查找最后的"\"和"."的位置,截取它们之间的字符,不过还有一种特殊情况,就是文件没有扩展名的情况,这种情况就截取最后一个"\"之后的部分即可