Home » Tipps & Tricks » Dateien/Verzeichnisse » Verzeichnisse » Endet ein String mit einem Backslash/Slash?

Endet ein String mit einem Backslash/Slash?

Bei einigen Dateioperationen kann es von Bedeutung sein, ob bei dem übergebenden Dateinamen ein abschließender Backslash “ am Ende des Strings steht oder nicht. Folgende Funktion gibt True zurück, wenn dies der Fall ist:

function HasTrailingBackSlash(const S: string): Boolean;
begin
  Result := (Length(S) > 0) and (AnsiLastChar(S) = '');
end;

Möchten Sie einen Backslash hinzufügen, können Sie die Funktion IncludeTrailingPathDelimiter verwenden (empfohlen), die allerdings erst ab Delphi 6 enthalten ist. Für ältere Delphi-Versionen setzen Sie bitte IncludeTrailingBackslash ein. Sollte keine dieser Funktionen in ihrer Delphi-Version vorhanden sein, müssen Sie den BackSlash manuell hinzufügen. Analog dazu verhält sich ExcludeTrailingPathDelimiter, die für das Löschen des abschließenden Backslashes zuständig ist.

Beachten Sie, das unter Linux ein Slash als abschließendes Begrenzungszeichen benutzt wird. IncludeTrailingPathDelimiter und ExcludeTrailingPathDelimiter wurden in Delphi 6 bereits angepasst.