![]() |
Prüfen ob string einen '.' enthält und somit Dateiname ist.
Ja, ich denke der Titel sagt schon alles.
Ich habe in einer Item Box Dateien und Ordner gelistet. jetzt soll Delphi Prüfen ob es ein eine dateiendung vorhanden ist. wie mach ich das?
Delphi-Quellcode:
kanns ja nicht sein.
if variable='.irgentwas' then ...
|
Re: Prüfen ob string mit '.irgendwas' endet.
Gehe in einer Schleife Zeile für Zeile durch, und schaue mit der ExtractFileExt()-Funktion, ob die Dateiendung mit der gesuchten übereinstimmt. Sobald Du fündig geworden bist, brichst Du die Schleife ab und gibst die Zeilennummer zurück.
|
Re: Prüfen ob string mit '.irgendwas' endet.
Mit
![]() |
Re: Prüfen ob string mit '.irgendwas' endet.
Hi,
meist ist es sinnvoll, ExtractFileExt im Zusammenhang mit Upper/Lowercase zu nehmen, z. B.
Delphi-Quellcode:
Mfg
Ext := LowerCase(ExtractFileExt(FileName));
if Ext = '.txt' then ... else if Ext = '.mp3' then else ... FAlter |
Re: Prüfen ob string mit '.irgendwas' endet.
Zitat:
|
Re: Prüfen ob string einen '.' enthält und somit Dateiname i
auch ohne Punkt kann es ein Dateiname sein :stupid:
somit ist die Überschirft wohl mehr falsch :shock: > "Prüfen ob string einen '.' enthält und somit Dateiname ist." [dp]Dateiname auf Gültigkeit prüfen[/dp] > z.B. ![]() [edit] :wall: ja stimmt ... siehe Alfi001 |
Re: Prüfen ob string mit '.irgendwas' endet.
Zitat:
MeinOrdner.txt - gültiger Ordnername mit Extension MeineDatei - gültiger Dateiname ohne Extension Eventuell könntest du noch mit "FileExists()" bzw. mit "DirectoryExists()" prüfen ob der ermittelte Name wirklich ein Ordner oder eine Datei ist. [edit: oops, da war himitsu schneller (gibts den roten Kasten nicht mehr??)] |
Re: Prüfen ob string einen '.' enthält und somit Dateiname i
Man könnte auch noch prüfen, ob die Datei/der Ordner existiert und wenn ja, ob faDirectory in den Attributen enthalten ist.
|
Re: Prüfen ob string einen '.' enthält und somit Dateiname i
Zitat:
|
Re: Prüfen ob string einen '.' enthält und somit Dateiname i
Fügst du sie allerdings nicht selbst hinzu und hast somit keine Möglichkeit, sie vorher schon zu überprüfen, könntest du folgenden Code benutzen:
Delphi-Quellcode:
Hab dafür jetzt 5 Minuten geopfert und wollte nicht, dass diese Arbeit umsonst gewesen ist :mrgreen:
type
TMyResult = (mrFile, mrFolder, mrNone); //... function FileOrFolder(Path: String): TMyResult; begin if FileExists(Path) then Result := mrFile else if DirectoryExists(Path) then Result := mrFolder else Result := mrNone; end; procedure TForm1.Button1Click(Sender: TObject); begin case FileOrFolder('D:\') of mrFolder: ShowMessage('Dies ist ein Ordner!'); mrFile: ShowMessage('Dies ist eine Datei!'); mrNone: ShowMessage('Weder Datei noch Ordner ;-)'); end; end; Mfg |
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:40 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