VB如何提取文件后缀?

来源:百度知道 编辑:UC知道 时间:2024/05/15 08:53:07
path="D:\B.C\AA.A.xls"
path="D:\D.C\F.GG\AA.A.xlsx"

比如提取上面文件路径的后缀"xls","xlsx"
给段代码?谢谢!文件路径可能有多个"."字符

文件后缀都是类似 .gif .rmvb .xml等形式的,所以只要提取文件最后1个 . 后面的字符就可以。
相关代码:
dim a as long
a = "D:\123\A.B.C.XML"
b=Right(a, Len(a) - InStrRev(a, "."))
b的值就是我们得到的后缀。

这个应该是最简单的:
sExtension=mid(path, InstrRev(path,".")+1)
InstrRev和Instr类似,是取子字符串在字符中中的位置,不过是从后向前查找,InstrRev(path,".")就是获得最后一个.号在path中的位置,从它后面一位开始取就可以了

呵呵,VB 的 字符串 函数 分成 丰富

先 用 \ 将 串 分成 几段 ,用 split 函数吧
再在 最后 一个 串里 定 . 的 位置, 用 instr 函数吧

然后 取 . 右边 的字串 就行了 ,用 mid,right 等函数

祝你顺利

楼上思路不错,我的思路是用instr函数查找点的位置,直到查到最后的点。

fpath = "D:\B.C\AA.A.xls"
k = InStr(1, fpath, ".")
Do While k <> 0
s = k
fpath = Mid(fpath, k + 1)
k = InStr(1, fpath, ".")
Loop
hz = fpath 'hz即后缀

其实运用楼上的思路,直接用点来分割就好了,代码如下:
Dim k
fpath = "D:\B.C\AA.A.xls"
k = Split(fpath, ".")
hz = k(UBound