Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - Array Problem


Xart - Sa 10.04.04 15:50
Titel: Array Problem

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
...
Read(File, test1);
  if test1.irgendwas = etwasanderes then
    begin
    TestArray[j]:=test1;
    inc(j);
    end;
...


ist es nicht so möglich die Werte aus test1 in das array TestArray zu bekommen?
bei Delphi 7 scheint das so zu funktionieren... aber bei Delphi 6 klappt das nicht.

ich habe irgendwie nen kleinen Hänger...

Wie immer vielen Dank im voraus! :D

Moderiert von user profile iconKlabautermann: Topic Verschoben & Code durch Delphi-Tags ersetzt


raziel - Sa 10.04.04 16:01

Solang gilt:

Delphi-Quelltext
1:
2:
3:
var
   test1: TBeispiel;
   TestArray: array [0..X] of TBeispiel;

dürfte das kein größeres Problem sein...
aber dann würd ich nich Read sondern BlockRead verwenden.

raziel


Xart - Sa 10.04.04 16:09

raziel hat folgendes geschrieben:
Solang gilt:

Delphi-Quelltext
1:
2:
3:
var
   test1: TBeispiel;
   TestArray: array [0..X] of TBeispiel;

dürfte das kein größeres Problem sein...
aber dann würd ich nich Read sondern BlockRead verwenden.

raziel


danke ;)
das hab ich natürlich vergessen

ansonsten...
warum blockread? hab ich noch nie vorher etwas von gehört.

Xart


raziel - Sa 10.04.04 16:21

Xart hat folgendes geschrieben:
warum blockread? hab ich noch nie vorher etwas von gehört.

Wenns um Strukturen aus Dateien lesen geht ist BlockRead besser. Denn Read hört am Ende einer Zeile auf zu lesen. Wenn du z.B. eine Struktur hast, in der ein Byte-Feld den Wert "10" und das darauffolgende Feld den Wert "31" hat und das gelesen werden soll, werden diese beiden Felder und die danach nicht mitgelesen. (#10#31 sind die Steuerzeichen für einen Zeilenumbruch).

[edit]
*schnell delphi hilfe durchgeblättert hab*
stimmt nich ganz: anscheinend hängts vom übergebenen Datentyp ab, was wie weit ausgelesen wird!
BlockRead find ich aber trotzdem besser!
[/edit]

raziel


Xart - Sa 10.04.04 17:03

ok danke
werd mal ein wenig damit rumspielen ;)


GruppeCN - Sa 10.04.04 18:15

#10#31? Ich dachte, #10#13 wären das???


Delete - Sa 10.04.04 19:46

Na ja, ist doch bloß ein Zahlendreher. ;)


raziel - So 11.04.04 11:05

:oops:
kann ja mal passieren...