AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Dateien mit Platzhaltern öffnen

Ein Thema von pilic · begonnen am 14. Sep 2006 · letzter Beitrag vom 17. Sep 2006
Antwort Antwort
Benutzerbild von pilic
pilic

Registriert seit: 10. Aug 2006
Ort: Aschbach
131 Beiträge
 
Turbo Delphi für Win32
 
#1

Dateien mit Platzhaltern öffnen

  Alt 14. Sep 2006, 18:18
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 ? 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
Dominik Bihn
  Mit Zitat antworten Zitat
Benutzerbild von stz
stz

Registriert seit: 8. Sep 2005
Ort: Neuendeich, Lübeck
277 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Dateien mit Platzhaltern öffnen

  Alt 14. Sep 2006, 18:23
Such mal nach Delphi-Referenz durchsuchenFinFirst und Delphi-Referenz durchsuchenFindNext.

Um zu prüfen, ob eine Datei z.B. zu 12??13*.ini passt kann ich PathMatchSpec empfehlen.

Gruß
Malte
Malte Schmitz
Der Unterschied zwischen Theorie und Praxis ist in der Praxis größer als in der Theorie.

Entwickler des HTML-Editors MEdit (DP)
  Mit Zitat antworten Zitat
Benutzerbild von pilic
pilic

Registriert seit: 10. Aug 2006
Ort: Aschbach
131 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: Dateien mit Platzhaltern öffnen

  Alt 14. Sep 2006, 18:34
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 bin.
Dominik Bihn
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.163 Beiträge
 
Delphi 12 Athens
 
#4

Re: Dateien mit Platzhaltern öffnen

  Alt 14. Sep 2006, 18:44
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
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von stz
stz

Registriert seit: 8. Sep 2005
Ort: Neuendeich, Lübeck
277 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: Dateien mit Platzhaltern öffnen

  Alt 14. Sep 2006, 18:53
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:
function PathMatchSpec; external 'shlwapi.dllname '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;
Gruß
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
Malte Schmitz
Der Unterschied zwischen Theorie und Praxis ist in der Praxis größer als in der Theorie.

Entwickler des HTML-Editors MEdit (DP)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.163 Beiträge
 
Delphi 12 Athens
 
#6

Re: Dateien mit Platzhaltern öffnen

  Alt 14. Sep 2006, 18:59
FindFirst kennt ? und *, also kein Problem
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von pilic
pilic

Registriert seit: 10. Aug 2006
Ort: Aschbach
131 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: Dateien mit Platzhaltern öffnen

  Alt 14. Sep 2006, 19:03
Okay danke.

Das wars dann mal für heut denk ich.

Cheerio
Dominik Bihn
  Mit Zitat antworten Zitat
Benutzerbild von stz
stz

Registriert seit: 8. Sep 2005
Ort: Neuendeich, Lübeck
277 Beiträge
 
Turbo Delphi für Win32
 
#8

Re: Dateien mit Platzhaltern öffnen

  Alt 17. Sep 2006, 13:25
Zitat von himitsu:
FindFirst kennt ? und *, also kein Problem
Oh, stimmt tatsächlich.
Filter := '*.ini;??-??-??.txt'; geht dann nicht mehr, aber das wird hier wohl auch gar nicht gebraucht. Dann ist meine Lösung natürlich ein bischen kompliziert.

Gruß
Malte
Malte Schmitz
Der Unterschied zwischen Theorie und Praxis ist in der Praxis größer als in der Theorie.

Entwickler des HTML-Editors MEdit (DP)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:53 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz