Einzelnen Beitrag anzeigen

Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#10

Re: Record und in File speichern

  Alt 28. Feb 2007, 16:47
Zitat von Nicodius:
ich hab dasselbe problem
Delphi-Quellcode:
Alles= record
  Vert_ast : array [0..30] of array [0..22] of string ;
Hi,
das sollte schon nicht funktionieren. Ein String hat keine feste Größe, die wird aber von einem Record benötigt. Ein String kann im Worst-Case 2^31 Zeichen enthalten, das wären gute 2 GByte pro String, bei 31 * 23 * 2 GByte dürfte das doch etwas viel werden (pro Record!).

Zitat von Nicodius:
ich hab dasselbe problem
Delphi-Quellcode:
procedure TMain.Speichern1Click(Sender: TObject);
var
  stream : TFileStream;
  filename : string;
begin
  filename := ChangeFileExt (Application.ExeName, '.ext'); // Filename setzen
  stream := TFileStream.Create (filename, fmCreate); // Stream erzeugen
  try
    stream.WriteBuffer (TAlles^, SizeOf (TAlles)); // hier kommt eine fehelrmeldung dass nach TAlles^ eine klammer fehlt ( und
                                                    // dass eine anweisung erforderlich ist aber ein integer gefunden wurde
  finally
    stream.Free; // Stream wieder freigeben
  end;
end;
was mach ich falsch?
Wo kommt denn TAlles her? Ist TAlles ein Datentyp? Dann würde das mit der Klammer daher kommen, dass Du schon eine Variable brauchst, die Du hier übergibst. TAlles(x) wäre dann der Cast der Variable x in ein TAlles. Jedenfalls brauchst Du eine Variable vom Typ TAlles, die kannst Du dann übergeben, sizeOf(Talles) kann dann hingegen bleiben (solange es sich nicht um einen Zeiger handelt, der sollte dann aber auch besser PAlles heißen!)

Gruß Der Unwissende
  Mit Zitat antworten Zitat