![]() |
Dateien mit Platzhaltern öffnen
Na ihr?
also ich hätt' da mal wieder ein kleines Problem. Ich soll ein kleines Programm schreiben, das Adressdaten von Bestellungen (in Form von Inis, die per e-mail geschickt werden von einem Formmailer, der im Online-Shop integriert ist). In eine Temp-Datei für ein weiteres Programm, das die Daten aus der temporären Datei ausliest und Sie auf Paketscheine druckt. Also das mit dem reinschreiben wird kein Problem. Also jetzt meine eigentliche Frage :wiejetzt: ? Wie kann ich Inis nacheinander auslesen, obwohl ich die Dateinamen nicht kenne. Beispiel für Dateinamen: 19684475729.ini Auf diese Dateien soll mit Hilfe von Platzhaltern nacheinander zugegriffen werden. Cheerio |
Re: Dateien mit Platzhaltern öffnen
|
Re: Dateien mit Platzhaltern öffnen
das ist schon mal nicht schlecht! ICh habe jetzt aber noch nicht so ganz verstanden, wie das laufen soll, wenn das Programm herausfinden soll, wie viele Dateien ausgelesen werden. Ich würde jetzt mal vermuten, dass das mit "if exist" und for-Schleifen geht. Könntet ihr mir bitte sagen, ob das so funktioniert, weil ich im Moment immer noch beim Brainstorming :gruebel: bin.
|
Re: Dateien mit Platzhaltern öffnen
PathMatchSpec ist garnicht nötig ... sowas hat FindFirst ja schon eingebaut.
z.B. einfach im nach Path + '*.ini' suchen lassen. [add] wenn du bei FindForst die Maske angibst, dann werden nur die passenden Dateien gefunden :zwinker: |
Re: Dateien mit Platzhaltern öffnen
Aus Faulheit kopier ich dir jetzt einfach mal, wie ich das schon ein paar mal gemacht habe in der Hoffnugn, das dir das hilft:
Delphi-Quellcode:
Gruß
function PathMatchSpec; external 'shlwapi.dll' name 'PathMatchSpecA';
procedure Search; var Path, Filter: String; F: TSearchRec; begin Path := 'C:\Pfad\zu\deinen\Dateien\'; Filter := '*.ini;??-??-??.txt'; if FindFirst(Path + '*.*', faAnyFile, F) = 0 then repeat if (F.Attr and faDirectory) = 0 then if PathMatchSpec(PChar(F.Name), PChar(Filter)) then TuIrgendwasIntelligentes(Path + F.Name); until FindNext(F) <> 0; end; Malte PS: Sehe gerade den roten Kasten: Für so einfache Filter gehts so natürlich auch, aber ich dachte, es sollen die echten Windows-Wildcards her... //Edit: Mist, Deklarationen nicht ordentlich angepasst |
Re: Dateien mit Platzhaltern öffnen
FindFirst kennt ? und *, also kein Problem :zwinker:
|
Re: Dateien mit Platzhaltern öffnen
Okay danke.
Das wars dann mal für heut denk ich. Cheerio :dancer: |
Re: Dateien mit Platzhaltern öffnen
Zitat:
Delphi-Quellcode:
geht dann nicht mehr, aber das wird hier wohl auch gar nicht gebraucht. Dann ist meine Lösung natürlich ein bischen kompliziert.
Filter := '*.ini;??-??-??.txt';
Gruß Malte |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:17 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