Einzelnen Beitrag anzeigen

Horst_

Registriert seit: 22. Jul 2004
Ort: Münster Osnabrück
116 Beiträge
 
#3

Re: Speichern 2-dim. dynamischer ShortString-Arrays als Stre

  Alt 18. Jan 2010, 19:37
Hallo,

Du musst zuvor aber irgendwie Dimensionen abspeichern, eventuell auch die Stringlänge, falls diese variabel ist.
Denn 10x5 String[x] belegen den gleichen Platz wie 5x10 String[x].
Also so ähnlich:
Delphi-Quellcode:
type
  TFeldGroessen = record
                     Zeilen,
                     Spalte,
                     StringSize : integer;
                     //..
                   end;
var
  Datei: TFileStream;
  FeldGroessen : TFeldGroessen;
  i: integer;
  s: String[15];
begin
  with FeldGroessen do
    begin
    Zeilen := high(Feld)-Low(Feld)+1;
    Spalten := high(Feld[0])-Low(Feld[0])+1;
    stringSize := SizeOf(s);//Obacht -> String[StringSize-1]
    end;
  Datei:= TFileStream.Create(<Dateiname>, fmOpenWrite);
  Datei.WriteBuffer(FeldGroessen,SizeOf(FeldGroessen));
  //Alle Zeilen nacheinander abspeichern -> Daten des tiefsten array sind die Spalten
  For i := 0 to FeldGroessen.Zeilen-1 do
    Datei.WriteBuffer(Feld[i], SpaltenZahl* SizeOf(s));
  ....
  end;
Gruß Horst
  Mit Zitat antworten Zitat