rawie87
Goto Top

Ende des Strings nach einem Backslash abtrennen

Hallo Leute,

weiss jemand von euch wie ich den String so abtrenne, dass nur der Dateiname nach dem "\" übrig bleibt ?

..\test\Daten\Muster\Programmierung\test.bmp

Bin für jede Anwtwort dankbar.

gruß raiwe

Content-ID: 58278

Url: https://administrator.de/contentid/58278

Ausgedruckt am: 25.11.2024 um 08:11 Uhr

Dani
Dani 07.05.2007 um 17:43:15 Uhr
Goto Top
Hi!
In welcher Sprache hättest du gerne die Lösung?? Diese Kategorie umfasst mehrere Sprachen(Visual Basic, VBA und .Net).


Gruß
Dani
bastla
bastla 07.05.2007 um 18:23:16 Uhr
Goto Top
Hallo rawie87!

Sollte so gehen:
Pfad = "..\test\Daten\Muster\Programmierung\test.bmp"  
Dateiname = Mid(Pfad, InStrRev(Pfad, "\") + 1)  

@Dani: Solange es kein VB5 ist, sollte es mit InStrRev() klappen ...

Grüße
bastla
rawie87
rawie87 08.05.2007 um 08:51:04 Uhr
Goto Top
Hallo Leute,

ich möchte das in vb.net machen.

@busta könntest du den Mid-Befehl mal kurz erläutern oder
mir irgenteine Siete oder sowas nennen, wo ich den mal nachvollziehen kann ?

gruß rawie
bastla
bastla 08.05.2007 um 10:19:04 Uhr
Goto Top
Hallo rawie87!

Meintest Du mich?

Falls ja: Da meine F1-Taste funktioniert, kann ich Dir mitteilen, was (bei VB2005) dazu in der Hilfe steht:

Mid-Funktion (Visual Basic)
Gibt eine Zeichenfolge zurück, die eine festgelegte Zeichenanzahl aus einer Zeichenfolge enthält.

Anders formuliert: Du kannst angeben, dass aus dem übergebenen String ab der angeführten Position eine bestimmte Anzahl von Zeichen entnommen wird. Wenn Du, wie in meinem Beispiel oben, die Zeichenanzahl nicht angibst, erhältst Du als Ergebnis alle Zeichen ab der angegebenen Position bis zum Ende des Strings. Konkret: Mit
Mid(Pfad, 37)
(oder eigentlich 36 + 1, siehe dazu unten) bekommst Du alle restlichen Zeichen ab Position 37 (inklusive) des Strings "Pfad". Damit ist es nur eine verkürzte Schreibweise für
Microsoft.VisualBasic.Right(Pfad, Len(Pfad) - 36)
Zur mehrfach erwähnten Position 37 kommst Du über die

InStrRev-Funktion (Visual Basic)
Gibt die Position des ersten Vorkommens einer Zeichenfolge innerhalb einer anderen Zeichenfolge von rechts nach links gesehen zurück.

Im Beispiel oben steht der erste (von rechts gesehen, daher von links betrachtet der letzte) "\" an Position 36 (die Position wird immer von links her angegeben) - ermittelt eben mit
InStrRev(Pfad, "\")  
Da Du den Rest des Strings nach dieser Position benötigst, musst Du noch 1 addieren und erhältst damit die ominöse 37 ...

Grüße
bastla
rawie87
rawie87 08.05.2007 um 11:09:03 Uhr
Goto Top
Hej Bastla.

super ! danke für die schnelle Hilfe

gruß rawie ;)