哪位高手能告诉我,VB取得文件后缀名的函数是哪个?
解决方案 »
- 我“迷路”了;
- 有接私活的程序员进来统计下吧,谢谢!
- 如何屏蔽Win键、DEL+ATL+CTL、CTL+ESC(XP系统)
- vb调用存储过程出错的问题,求教!
- 我的vb6开发环境出现乱码?请教高手!!!!
- (救命呀!)用vb自带的打包程序进行打包时,显示控件过期,怎么办?
- 请教MSCHART一个小问题
- 怎样 把窗体 保存成一个.jpg 图像 或者 保存mschart的 内容 为一张图片
- 请问谁知道错误代码621,623,259是什么错误?
- 發發慈悲吧!我用installershield7.01.打包.安裝之后.連*.exe文件都找不到.別說數據庫文件了.而且当我用打包后的文件安装后,想再安装时,
- 一个VB的小问题(在线等待!!!)
- 为什么我程序在调用SendKeys "{Tab}" 时键盘的 NumLoack灯老是闪烁
最后一个点后面的所有字符加在一起就是这个文件的扩展名了(没有扩展名的不算)
sfile = "a.bcd"
if InStr(StrReverse(sfile), ".")>0 then sfile = StrReverse(Left(StrReverse(sfile), InStr(StrReverse(sfile), ".") - 1))
扩展名sfile ="bcd",没错吧???
if InStr(StrReverse(sfile), ".")>0 then
sfile = StrReverse(Left(StrReverse(sfile), InStr(StrReverse(sfile), ".") - 1))
else
sfile=""
endif
filename="mm.txt.exe.abc"
aa=split(filename)
bb=ubound(aa)
fileend=aa(bb)
fileend就是文件的后缀
filename="mm.txt.exe.abc"
aa=split(filename)
bb=ubound(aa)
fileend=aa(bb)
fileend就是文件的后缀这个好,我的扩展名经常不止3个
if InStr(StrReverse(sfile), ".")>0 then
sfile = StrReverse(Left(StrReverse(sfile), InStr(StrReverse(sfile), ".") - 1))
else
sfile="" '无扩展名
endif
描述返回一个字符串在另一个字符串中出现的位置,从字符串的末尾算起。语法InstrRev(string1, string2[, start[, compare]])InstrRev函数语法有如下几部分:部分 描述
string1 必需的。要执行搜索的字符串表达式。
string2 必需的。要搜索的字符串表达式。
start 可选的。数值表达式,设置每次搜索的开始位置。如果忽略,则使用–1,它表示从上一个字符位置开始搜索。如果start包含
Null,则产生一个错误。
compare 可选的。数字值,指出在判断子字符串时所使用的比较方法。如果忽略,则执行二进制比较。关于其值,请参阅“设置值”部分。
设置值compare参数值如下:常数 值 描述
vbUseCompareOption –1 用Option Compare语句的设置值来执行比较。
vbBinaryCompare 0 执行二进制比较。
vbTextCompare 1 执行文字比较。
vbDatabaseCompare 2 只用于Microsoft Access。基于您的数据库信息执行比较。
返回值InStrRev返回值如下:如果 InStrRev返回
string1长度为零。 0
string1为Null。 Null
string2长度为零 Start
string2为Null Null
string2没有找到。 0
string2在string1中找到。 找到匹配字符串的位置。
start > Len(string2) 0
说明请注意,InstrRev函数的语法和Instr函数的语法不相同。
'------------------------------------------------------
'例子
Dim i As Integer
i = InStrRev("Hello_120.exe.scr", ".")
MsgBox Right("Hello_120.exe.scr", Len("Hello_120.exe.scr") - i)
filename="mm.txt.exe.abc"
aa=split(filename)
bb=ubound(aa)
fileend=aa(bb)
fileend就是文件的后缀
----------------------------
修改:
filename="mm.txt.exe.abc"
if instr(filename)<>0 then
aa=split(filename)
bb=ubound(aa)
fileend=aa(bb)
else
fileend=""
end if
filename="mm.txt.exe.abc"
if instr(filename,".")<>0 then
aa=split(filename)
bb=ubound(aa)
fileend=aa(bb)
else
fileend=""
end if
Dim fso As FileSystemObject
Set fso = New FileSystemObject MsgBox fso.GetExtensionName("C:\AUTOEXEC.BAT")
End Sub