2009-08-28 182 views
12

如何检索visual basic 6中字符串数组的最后一个元素?获取vb6中字符串数组的最后一个元素?

我正在处理分割成数组的多个点的文件名,我只想操作扩展名。以下代码有效,但有一个我想删除的硬编码元素。

Private Sub Form_Load() 
    Dim aPath() As String 
    Dim FileName As String 
    Dim realExt As String 

    FileName = "A long dotty.file.name.txt" 
    aPath = Split(FileName, ".") 

    realExt = aPath(3) ' <-- how to not hardcode?' 

    MsgBox ("The real extension is: " & realExt) 
    Unload Me 
End Sub 
+1

为什么不直接找到'。'的最后一个索引。字符串中的字符? – 2009-08-29 00:00:16

回答

25

我认为使用UBOUND应该做的伎俩:

Private Sub Form_Load() 
    Dim aPath() As String 
    Dim FileName As String 
    Dim realExt As String 

    FileName = "A long dotty.file.name.txt" 
    aPath = Split(FileName, ".") 

    realExt = aPath(UBound(aPath)) 

    MsgBox ("The real extension is: " & realExt) 
    Unload Me 
End Sub 
3
realExt = aPath(ubound(aPath)) 
+0

- 非常感谢! – 2009-09-02 20:30:50

0

但是,如果它真的只是你以后的扩展,这将做的工作:

Private Sub Form_Load() 
    Dim sFileName As String 
    Dim lPos As Long 
    Dim sRealExt As String 

    sFileName = "A long dotty.file.name.txt" 
    lPos = InStrRev(sFileName, ".") 
    If lPos Then sRealExt = Mid$(sFileName, lPos + 1) 
End Sub 
相关问题