Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Anzahl der Dateisätze auslesen? (https://www.delphipraxis.net/108990-anzahl-der-dateisaetze-auslesen.html)

Hurleybird 22. Feb 2008 13:34


Anzahl der Dateisätze auslesen?
 
Wenn ich zB 5 Datensätze in einer Datei habe, mit welchem Befehl kann ich die "5" herausbekommen?
Also wie kann ich herausfinden, wie viel Datensätze es gibt?

Ach ja, bin übrigens neu hier und hoffe ich bin im richtigen Bereich...

Würde mich über eine Antwort freuen...

marabu 22. Feb 2008 13:38

Re: Anzahl der Dateisätze auslesen?
 
Herzlich willkommen in der Delphi-PRAXiS, Hurleybird.

Das hängt sehr davon ab, ob deine Datensätze eine feste Länge haben oder nicht. Bei fester Länge kannst du die Satzzahl aus der Dateigröße errechnen, bei variabler Länge musst du die Sätze abzählen. Immer vorausgesetzt, dass die Datei die Zahl nicht bereits in einem Header zur Verfügung stellt.

Freundliche Grüße vom marabu

Bernhard Geyer 22. Feb 2008 13:38

Re: Anzahl der Dateisätze auslesen?
 
Wie sind deine Datensätze in der Datei gespeichert? Typisierte Datei, CSV, XML, ...

Bei typisierter Datei würde ich sagen:

Delphi-Quellcode:
Dateigröße/SizeOf(Datenrecord der verwendet wird);

Hurleybird 22. Feb 2008 13:46

Re: Anzahl der Dateisätze auslesen?
 
Jop, typisiert und mit fester Länge!

sizeof hat geklappt, vielen dank!

Hurleybird 22. Feb 2008 14:18

Re: Anzahl der Dateisätze auslesen?
 
Ne, hat wohl doch noch nicht so ganz hingehauen.
Ok ich beschreibe es mal etwas genauer:

Ich habe ein record, welches aus 2 strings mit der länge [50] sind.
Das record speichere ich jetzt in der Datei.
Nun habe ich sowas wie

Datensatz0 String1 String2
Datensatz1 String1 String2

usw...

wenn ich
Delphi-Quellcode:
Stringgrid1.rowCount:=sizeof(datei);
schreibe, macht er mir 322 rows, ich vermute weil er die bits zählt oder sowas.

Wie kann ich aber die nummer der Datensätze bekommen, also in diesem Fall "2" ??

Nuclear-Ping 22. Feb 2008 14:22

Re: Anzahl der Dateisätze auslesen?
 
Mit SizeOf bekommst du die Größe eines Typen, nicht einer Datei.

gmc616 22. Feb 2008 14:46

Re: Anzahl der Dateisätze auslesen?
 
Wie liest du die Datei aus?

Hurleybird 22. Feb 2008 15:12

Re: Anzahl der Dateisätze auslesen?
 
Zitat:

Zitat von gmc616
Wie liest du die Datei aus?

wie meinst du das?

seek(Datei,nummer);
read(Datei,meinstring);

so...

@nuclear-ping: ich möchte auch nicht die größe der datei, sondern die anzahl der vorhandenen auflistungen/datensätze

gmc616 22. Feb 2008 15:18

Re: Anzahl der Dateisätze auslesen?
 
Dann sollte der Vorschlag von Bernhard Geyer in #3 funktionieren, oder?

Hurleybird 22. Feb 2008 15:20

Re: Anzahl der Dateisätze auslesen?
 
Zitat:

Zitat von gmc616
Dann sollte der Vorschlag von Bernhard Geyer in #3 funktionieren, oder?

dachte ich auch, aber er gibt mir immer 332 als zahl raus, egal wieviele nummern tatsächlich belegt sind...


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:51 Uhr.
Seite 1 von 2  1 2      

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