Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - Variabler Record
Argiope - Mi 19.11.08 11:34
Titel: Variabler Record
Hallo,
bin das erstemal hier undd schreibe progs nur wenn ich muss :-).
ich möchte eine Datei lesen, die aus folgenden dynamischen Records besteht:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| Cnt1 : word; Str1 : pchar; Cnt2 : word; Str2 : pchar; Cnt3 : word; Str3 : pchar; Cnt4 : Dword; Kacheln : array of Dword; Cnt5 : Dword; Ecken : array of double; |
bislang habe ich mir geholfen indem ich das in eine Array of bytes gepackt habe und mit move an die richtigen stellen geräumt.
Aber für die Strings schlägt das fehl, die sind hinterher leer.
Hat jemand eine Idee?
Gruß,
Thomas
Moderiert von
AXMD: Delphi-Tags hinzugefügt
BenBE - Do 20.11.08 14:52
Beim Lesen von Strings musst Du bevor Du diese befüllen kannst manuell SetLength aufrufen.
Gleiches gilt für dynamische Arrays.
Argiope - Do 20.11.08 15:45
Hallo,
Problem gelöst mit Array[0..127] of char pchar und zuweisung:
Delphi-Quelltext
1: 2: 3: 4:
| blockread(anyfile,Cnt1,2); blockread(anyfile,Anystr,Cnt1); anypchar:=@anystr[0]; Str1:=string(anypchar); |
Str1 ist nun kein pchar mehr sondern ein string
Danke.
Gruß
Thomas
Moderiert von
Narses: Delphi-Tags hinzugefügt
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!