![]() |
dateien nacheinander einlesen
hay,
ich habe ja grade ein tagebuch gemacht, eine einzige funktion möchte ich da aber noch einbauen: ich möchte machen, dass man, wenn man grade mal will, alle einträge in eine einzige txt speichern lassen kann. die einträge werden so gespeichert: dd.mm.yyyy.tb und dd.mm.yyyy.tb2 dann müsste das programm also zuerst die älteste dd.mm.yyyy.tb2 lesen um einige infos zu holen diese müssten dann in die txt geschrieben werden, dann sollte die dd.mm.yyyy.tb gelesen werden und der beitrag in die txt geschrieben werden. dann wird die zweitälteste dd.mm.yyyy.tb2 gelsesen, die infos werden geschrieben, dann wird die dd.mm.yyyy.tb gelesen und wieder der eintrag geschrieben. ... das passiert halt so lange bis alle einträge geschrieben sind. um zu erkennen hab ich mir das so gedacht, aber ich weiss end wie ich das umsetzen kann: das programm sucht nach ner datei die so aufgebaut ist: 01.01.2006 falls die datei existiert wird sie eingelesen ansonsten, sucht das programm ne datei die so heisst: 02.01.2006, und dann sucht es immer weiter ne datei halt bis das datum so ist wie das von heute+1tag. kann mir bitte jemand helfen das ganze umzusetzen? mfG toredo |
Re: dateien nacheinander einlesen
Schau Dir mal die Funktionen
FindFirst, FindNext und FindClose an damit müßte sich das realisieren lassen. Mußt halt noch etwas drumherum bauen. Grüße Klaus |
Re: dateien nacheinander einlesen
Wie bereits gesagt, per FindFirst/FindNext die Dateien suchen (*.tb) und eine StringList, oder ein StringArray eintragen und dann die *.tb2 suchen und auch eintragen (wenn es zu jeder *.tb immer eine *.tb2 gibt, dann brauchste die *.tb2 nicht suchen, da du ja beim einlesen einfach nur die "2" dan den Dateinamen der *.tb anzuhängen brauchst).
Dann die Liste mit den Dateien sortieren. Das würde sich aber einfacher machen, wenn du die Dateien yyyy.mm.dd.tb nennst, dann können einfach die Strings/Dateinamen per "<" und ">" verglichen werden ... so mußt du den Dateinamen ja zerlegen und Jahr/Monat/Tag einzeln vergleichen. (außerdem wären die Dateien dann auch im Explorer in 'ner "guten" Reinfolge :roll: ) und am Ende muß nur noch diese Liste abgegangen und die Dateien eingelesen werden. ^^ |
Re: dateien nacheinander einlesen
thx für die antworten, dieses findfirst/next/close werd ich mir mal anschauen.
Zitat:
mfG toredo -edit- ich hab mal gemacht, dass die eintrage die namen in dme format bekommen:yyyy.mm.dd.tb aber mit findfirst/next/close habe ich ein problem:o ich wollte mal ein kleines testprojekt machen um diese funktionen mal näher kennenzulernen, und da hab ich mal mit findfirst begonnen:
Delphi-Quellcode:
jetzt werden (hoffentlich^^) die dateinamen in SR gespeichert, aber weiter komm ich irgendwie ned...
procedure TForm1.Button1Click(Sender: TObject);
var SR: TSearchRec; begin FindFirst('D:\Benjamin\tagebuch2\mitpw\data\*.tb', faAnyFile, SR); FindNext(SR); FindClose(SR); end; end. mfG toredo |
Re: dateien nacheinander einlesen
Hi,
nee so geht das auch nicht..... :-)
Delphi-Quellcode:
var
error: integer; sr: tSearchrec; pfad: string; dateiname: string; begin pfad := 'c:\meindateipfad\'; error := FindFirst(pfad + '*.txt', faAnyfile, sr); while error = 0 do begin dateiname := pfad + sr.name; // tu was mit der datei error := FindNext(sr); end; FindClose(sr); end; |
Re: dateien nacheinander einlesen
hay,
thx für den code, :-D Zitat:
ich werde das gleich umsetzen, danke für die hilfe:) mfG toredo |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:04 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