Hallo Zusammen,
hier ein paar nützliche Funktionen zu Dateien und Pfade von mir.
************************************************** ******************************
* Überprüft ob ein "\" am Ende des Pfades ist.
* function UeberpruefeSlash(const Pfad : String): String;
* Wenn nicht wird "\" darangehängt.
************************************************** ******************************
* Liefert den Filenamen aus einen einen String zurueck
* function GetFileName(const FileName :String):String;
* Bsp : GetFileName('C:\WINDOWS\SYSTEM\README.TXT') --> 'README.TXT'
************************************************** *****************************
* Liefert den Pfad einer Datei zurueck
* function GetDirName(const FileName: String):String;
* Bsp : GetDirName('C:\WINDOWS\SYSTEM\README.TXT') --> 'C:\WINDOWS\SYSTEM\'
************************************************** *****************************
* Liefert den Extender eines Dateinamens in Kleinbuchstaben zurück
* function GetExtender(const FileName: String) :String;
* Bsp_: GetExtender('Readme.TxT') --> 'txt'
************************************************** *****************************
* Holt den Dateinamen ohne Extender
* function GetName(const FileName: String) :String;
* Bsp.: GetName(Notepad.Exe) --> 'Notepad'
************************************************** ******************************
* Liefert den letzten Ordner aus einem Pfad zurück
* function GetLastDirName(const FileName: String):String;
* Bsp : GetLastDirName('C:\Programme\MeinProgramm') --> 'MeinProgramm'
************************************************** *****************************
Delphi-Quellcode:
function UeberpruefeSlash(const Pfad : String): String;
begin
Result := Pfad;
if (Length(Pfad) > 0) AND (Pfad[Length(Pfad)] <> '\') then Result := Result + '\';
end;
function GetFileName(const FileName: String):String;
var
i: Integer; //Zaehlvariable
S: Integer; //Slashposition im Filename
Begin
S := 0;
For i:= Length(FileName) downto 0 do
Begin
IF S = 0 then
Begin
If FileName[I] = '\' then S := I;
result := copy(FileName, S+1, Length(Filename)-S+1);
End;
End;
End;
function GetDirName(const FileName: String):String;
var
i: Integer; //Zaehlvariable
S: Integer; //Slashposition im Filename
Begin
S := 0;
For i:= Length(FileName) downto 0 do
Begin
IF S = 0 then
Begin
If FileName[I] = '\' then S := I;
result := copy(FileName, 1, S );
End;
End;
End;
function GetExtender(const FileName: String) :String;
var
i: Integer;
s: Integer;
Begin
s := 0;
For i := Length(FileName) downto 0 do
Begin
IF S = 0 then
Begin
If FileName[I] = '.' then S := I;
result := copy(FileName, S+1, Length(Filename)-S+1);
result := Lowercase(result);
End;
End;
End;
function GetName(const FileName: String) :String;
var
i: Integer;
y,s: Integer;
Ext: String;
Begin
s := 0;
For i := Length(FileName) downto 0 do
Begin
IF S = 0 then
Begin
If FileName[I] = '\' then S := I;
Ext := copy(FileName, S+1, Length(Filename)-S+1);
y := Pos('.',Ext);
result := Copy(Ext,0, y -1);
result := Lowercase(result);
End;
End;
End;
function GetLastDirName(const FileName: String):String;
var
i: Integer; //Zaehlvariable
S: Integer; //Slashposition im Filename
Begin
S := 0;
For i:= Length(FileName) downto 0 do
Begin
IF S = 0 then
Begin
If FileName[I] = '\' then S := I;
result := copy(FileName, S+1, Length(Filename)-S+1);
End;
End;
End;
Das wars auch schon...