哪位高手能告诉我,VB取得文件后缀名的函数是哪个?

解决方案 »

  1.   

    没有这个函数,但你可以取得文件的完整路径后,再用Right('文件路径',3)来得到文件的后缀名,或,也哥用API函数。
      

  2.   

    自己编,Right(String,3)最右边三位就是后缀名啊,Such as Ocxname.OCx,你执行一下就可以得到OCx了!
      

  3.   

    我是用“tanta(tanta)”的方法,搜索文件名中最后一个(.)。
      

  4.   

    用instr来找“.”这个东西
    最后一个点后面的所有字符加在一起就是这个文件的扩展名了(没有扩展名的不算)
      

  5.   

    假设文件名为a.bcd
    sfile = "a.bcd"
    if InStr(StrReverse(sfile), ".")>0 then sfile = StrReverse(Left(StrReverse(sfile), InStr(StrReverse(sfile), ".") - 1))
    扩展名sfile ="bcd",没错吧???
      

  6.   

    sfile = "a.bcd"
    if InStr(StrReverse(sfile), ".")>0 then 
        sfile = StrReverse(Left(StrReverse(sfile), InStr(StrReverse(sfile), ".") - 1))
    else
        sfile=""
    endif
      

  7.   

    看看我的方法
    filename="mm.txt.exe.abc"
    aa=split(filename)
    bb=ubound(aa)
    fileend=aa(bb)
    fileend就是文件的后缀
      

  8.   

    看看我的方法
    filename="mm.txt.exe.abc"
    aa=split(filename)
    bb=ubound(aa)
    fileend=aa(bb)
    fileend就是文件的后缀这个好,我的扩展名经常不止3个
      

  9.   

    sfile = 不管有没有扩展名,是什么扩展名都可以
    if InStr(StrReverse(sfile), ".")>0 then 
        sfile = StrReverse(Left(StrReverse(sfile), InStr(StrReverse(sfile), ".") - 1))
    else
        sfile="" '无扩展名
    endif
      

  10.   

    现在还有一些文件名:Hello_120.exe.scr 怎么解决?
      

  11.   

    使用InstrRev函数
    描述返回一个字符串在另一个字符串中出现的位置,从字符串的末尾算起。语法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)
      

  12.   

    看看我的方法
    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
      

  13.   

    错了,少一个"."
    filename="mm.txt.exe.abc"
    if instr(filename,".")<>0 then
    aa=split(filename)
    bb=ubound(aa)
    fileend=aa(bb)
    else
    fileend=""
    end if
      

  14.   

    引用microsoft scripting runtimePrivate Sub Command1_Click()
        Dim fso As FileSystemObject
        Set fso = New FileSystemObject    MsgBox fso.GetExtensionName("C:\AUTOEXEC.BAT")
    End Sub