vb6 Как бы я отредактировал это, чтобы расширение считало только до 3 символов (разбор строк) - PullRequest
1 голос
/ 15 ноября 2008

На днях кто-то разместил здесь замечательную маленькую функцию, которая разделяла полный путь файла на несколько частей, которые выглядели так:

Function BreakDown(Full As String, FName As String, PName As String, Ext As String) As Integer
 If Full = "" Then
 BreakDown = False
 Exit Function
 End If
 If InStr(Full, "\") Then
 FName = Full
 PName = ""
 Sloc% = InStr(FName, "\")
 Do While Sloc% <> 0
   PName = PName + Left$(FName, Sloc%)
   FName = Mid$(FName, Sloc% + 1)
   Sloc% = InStr(FName, "\")
 Loop
 Else
 PName = ""
 FName = Full
 End If
Dot% = InStr(Full, ".")
If Dot% <> 0 Then
 Ext = Mid$(Full, Dot%)
Else
 Ext = ""
End If
BreakDown = True

End Function

Однако, если линия продолжается после этой точки, она считается частью расширения, в любом случае, можно ли сделать так, чтобы это считалось только до 3 символов после последнего периода в строке?

Ответы [ 2 ]

1 голос
/ 15 ноября 2008
Dot% = InStrRev(Full, ".")  ' First . from end of string
If Dot% <> 0 Then
 Ext = Mid$(Full, Dot%, 3)
Else
 Ext = ""
End If

Mid $ синтаксис: Mid (строка, начало [, длина])

0 голосов
/ 15 ноября 2008

Если у вас просто пустые символы, просто добавьте это как первую строку

Full = Trim(Full)

Если у вас есть другие символы, тогда

Изменение:

Ext = Mid$(Full, Dot%)

до:

Ext = Mid$(Full, Dot%, 3)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...