![]() |
Re: letzen Ordnernamen eines Pfades ermitteln
Hallo,
wie wär's damit.. :mrgreen:
Delphi-Quellcode:
..da ist man auch nicht auf den Backslash festgelegt.
function gibletztenOrdner(komplett: String): String; // es muss der ganze Pfad mit Dateiname übergeben werden
begin Result := ExtractFileName(ExcludeTrailingPathDelimiter(ExtractFilePath(komplett))); end; |
Re: letzen Ordnernamen eines Pfades ermitteln
Morgen,
Kann man da nicht auch einfach die Funktion ExtractRelativePath verwenden?
Delphi-Quellcode:
fShortDirectory := ExtractRelativePath(fFullDirectory, fFullDirectory);
|
Re: letzen Ordnernamen eines Pfades ermitteln
Hallo Leute,
was haltet Ihr davon (getestet unter Delphi 5):
Delphi-Quellcode:
function GetLstPathName( pn : string) : string;
begin pn := ExcludeTrailingBackslash(ExtractFilePath(pn)); // es sollte eigentlich immer noch ein \ in der Zeichenkette stehen Result := copy(pn, LastDelimiter('\', pn)+1, length(pn)); end; // pn muß am Ende ein Backslash haben oder einen Dateinamen procedure TFAB.test1Click(Sender: TObject); begin // Aufruf entweder nur mit Pfadname auf \ endend s := 'C:\Dokumente und Einstellungen\Administrator\Eigene Dateien\Testpfad\Settings\'; // oder mit Dateiname s := 'C:\Dokumente und Einstellungen\Administrator\Eigene Dateien\Testpfad\Settings\test.dat'; lblTest.Caption := GetLstPathName(s); // --> Settings end; @s14:
Delphi-Quellcode:
gibt es unter Delphi5 noch nicht
ExcludeTrailingPathDelimiter
@dahead:
Delphi-Quellcode:
lieferte mir nur den Dateinamen im Test
fShortDirectory := ExtractRelativePath(fFullDirectory, fFullDirectory);
mfg eddy |
Re: letzen Ordnernamen eines Pfades ermitteln
@eddy:
du darfst diese funktion dann auch nur mit verzeichnis-namen aufrufen. |
Re: letzen Ordnernamen eines Pfades ermitteln
ExtractFileName(ExcludeTrailingBackSlash(ExtractFi lePath('c:\windows\system32\a.txt')))
|
Re: letzen Ordnernamen eines Pfades ermitteln
@dimo
Hast Du Beitrag #11 gelesen? :cyclops: |
Re: letzen Ordnernamen eines Pfades ermitteln
Kleine Anmerkung zu den ganzen Lösungen hier:
1.) Laut Delphi-Hilfe sollen neue Programme die Funktionen IncludeTrailingPathDelimiter und ExcludeTrailingPathDelimiter benutzen, nicht die alten Versionen mit "Backslash" im Namen. Natürlich nur, wenn wan eine entsprechend neue Delphi-Version hat, in der es diese Funktionen schon gibt. 2.) Kennt ihr den Unterschied zwischen ExtractFileDir und ExtractFilePath? Ersteres liefert das Verzeichnis ohne terminierenden Pathdelimiter. D.h. statt "ExcludeTrailingPathDelimiter(ExtractFilePath(...) )" kann man auch einfach "ExtractFileDir(...)" schreiben. ;) Einen kleinen Unterschied gibt es aber schon: ExcludeTrailingPathDelimiter(ExtractFilePath('C:\' )) ergibt 'C:' ExtractFileDir('C:\') ergibt 'C:\' |
Re: letzen Ordnernamen eines Pfades ermitteln
Hallo,
ab Delphi 3 und unter Berücksichtigung von Dateien die sich im Root-Verzeichnis befinden können:
Delphi-Quellcode:
function FolderOrDrive(fileName: string): string;
var i : Integer; begin Result := ExtractFileDir(fileName); i := LastDelimiter('\',Result); if i = 3 then Delete(Result,i,1) else Delete(Result,1,i); end; |
Re: letzen Ordnernamen eines Pfades ermitteln
Nein :)
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:48 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz