SplitPath

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

SplitPath, EingabeVar , Dateiname, Verzeichnis, Erweiterung, NameOhneErw, Laufwerk

Parameter

EingabeVar

Name der Variable, die den Dateinamen zur Analyse enthält.

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

Dateiname

Name der Ausgabevariable, in der der Dateiname ohne Pfad gespeichert werden soll. Die Dateierweiterung ist inbegriffen.

Verzeichnis

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.

Erweiterung

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

NameOhneErw

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

Laufwerk

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

Man kann eine Ausgabevariable weglassen, wenn die entsprechende Information nicht benötigt wird.

Wenn EingabeVar einen Dateinamen ohne Laufwerksbuchstaben enthält (also ohne Pfad oder nur einen relativen Pfad), wird Laufwerk leer gemacht, aber alle anderen Ausgabevariablen normal gesetzt. Ist kein Pfad vorhanden, wird Verzeichnis leer gemacht; ist ein Pfad, aber kein Dateiname vorhanden, wird Dateiname und NameOhneErw 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 und Erweiterungen dienen.

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

Siehe auch

A_LoopFileExt, StringSplit, StringGetPos, StringMid, StringTrimLeft, StringLeft, FileSelectFile, FileSelectFolder

Beispiel

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, Erw, NameOhneErw, Laufwerk
   
; Die oben genannten Variablen werden wie folgt gesetzt:
; Name = Adressenliste.txt
; Verz = C:\Meine Dokumente
; Erw = txt
; NameOhneErw = Adressenliste
; Laufwerk = C: