SplitPath

Teilt einen Dateinamen oder eine URL in Name, Verzeichnis, Endung und Laufwerk auf.

SplitPath, EingabeVar , AusDateiName, AusVerz, AusEndung, AusNameOhneEnd, AusLaufw

Parameter

EingabeVar

Name der Eingabevariable, die den Dateinamen oder die URL zur Analyse enthält.

Beachten Sie, dass dieser Befehl davon ausgeht, dass Dateinamenpfade nur umgekehrte Schrägstriche (\) und URLs nur Schrägstriche (/) enthalten.

[v1.1.21+]: Dieser Parameter kann ein % Ausdruck sein, allerdings muss das Prozent-Leerzeichen-Präfix verwendet werden.

AusDateiName

Name der Ausgabevariable, in der der Dateiname ohne Pfad gespeichert werden soll. Die Endung der Datei ist enthalten.

AusVerz

Name der Ausgabevariable, in der das Verzeichnis der Datei, einschließlich Laufwerksbuchstabe oder Freigabename (falls vorhanden), gespeichert werden soll. Der letzte umgekehrte Schrägstrich ist nicht enthalten, auch dann nicht, wenn die Datei im Wurzelverzeichnis des Laufwerks vorkommt.

AusEndung

Name der Ausgabevariable, in der die Endung der Datei gespeichert werden soll (z. B. TXT, DOC oder EXE). Der Punkt ist nicht enthalten.

AusNameOhneEnd

Name der Ausgabevariable, in der der Dateiname ohne Pfad, Punkt und Endung gespeichert werden soll.

AusLaufw

Name der Ausgabevariable, in der der Laufwerksbuchstabe oder Servername der Datei gespeichert werden soll. Wenn die Datei auf einem lokalen oder zugeordneten Laufwerk vorkommt, wird die Variable den Laufwerksbuchstaben gefolgt von einem Doppelpunkt enthalten (ohne umgekehrten Schrägstrich). Befindet sich die Datei auf einem Netzwerkpfad (UNC), wird die Variable den Freigabenamen enthalten (z. B. \\Workstation01).

Bemerkungen

Wenn bestimmte Informationen nicht benötigen werden, können die entsprechenden Ausgabevariablen weggelassen werden.

Wenn EingabeVar einen Dateinamen ohne Laufwerksbuchstaben enthält (also ohne Pfad oder nur einen relativen Pfad), wird AusLaufw leer gemacht, aber alle anderen Ausgabevariablen normal gesetzt. Ist kein Pfad vorhanden, wird AusVerz leer gemacht; ist ein Pfad, aber kein Dateiname vorhanden, wird AusDateiName und AusNameOhneEnd leer gemacht.

Derzeitige Dateien und Verzeichnisse im Dateisystem werden nicht von diesem Befehl überprüft. Er analysiert einfach nur die angegebene Zeichenkette in EingabeVar.

Platzhalter (* und ?) und andere Zeichen, die im Dateinamen nicht erlaubt sind, können in EingabeVar vorkommen. Das gilt nicht für Doppelpunkt, umgekehrter Schrägstrich und Punkt, da diese als Abgrenzung für Laufwerksbuchstaben, Verzeichnisse bzw. Endungen dienen.

Unterstützung für URLs: Wenn EingabeVar einen Doppelpunkt und zwei Schrägstriche enthält (z. B. https://domain.com oder ftp://domain.com), wird AusVerz auf Protokollpräfix + Domänenname + Verzeichnis (z. B. https://domain.com/images) und AusLaufw auf Protokollpräfix + Domänenname (z. B. https://domain.com) gesetzt. Alle anderen Ausgabevariablen werden in Bezug auf ihre oben genannten Definitionen gesetzt.

A_LoopFileExt, StrSplit(), StringGetPos, StringMid, StringTrimLeft, StringLeft, FileSelectFile, FileSelectFolder, StringSplit

Beispiele

Zeigt verschiedene Verwendungsmöglichkeiten.

KompletterDateiName := "C:\Meine Dokumente\Adressenliste.txt"
   
; Um nur den Dateinamen ohne Pfad abzurufen:
SplitPath, KompletterDateiName, Name

; Um nur das Verzeichnis abzurufen:
SplitPath, KompletterDateiName,, Verz

; Um alle Informationen abzurufen:
SplitPath, KompletterDateiName, Name, Verz, End, NameOhneEnd, Laufwerk
   
; Die oben genannten Variablen werden wie folgt gesetzt:
; Name = Adressenliste.txt
; Verz = C:\Meine Dokumente
; End = txt
; NameOhneEnd = Adressenliste
; Laufwerk = C: