AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Stream

Ein Thema von SaFu · begonnen am 14. Feb 2007 · letzter Beitrag vom 14. Feb 2007
 
Benutzerbild von SaFu
SaFu

Registriert seit: 8. Nov 2006
1.360 Beiträge
 
Delphi 10.3 Rio
 
#7

Re: Stream

  Alt 14. Feb 2007, 16:08
Hi hatte wirklich nur das begin und end vergessen

Habe jetzt aber ein anderes Problem

Irgendwas stimmt beim laden oder Speichern meines Streams nicht, beim Speichern wird alles sauber in meine .txt gespeichert auch lesbar also schließe ich den Fehler beim Speichern aus, beim laden werden alle Daten des StringGrids auch sauber geladen nur die Memos und Labels erhalten nur ein schwarzen strich woran könnte das liegen.

Stream Speichern

Delphi-Quellcode:

{Stream Speichern}
procedure TForm7.memospeichern;
var FileStream: TMemoryStream;
    memos :TFileName;
    x, y, row, col,len :Word;
    a,c,e,g,i,k,m,o,q,s :String;
    b,d,f,h,j,l,n,p,r,t :integer;
 begin
  a:= Memo1.Text; b:=Length(a);
  c:= Memo2.Text; d:=Length(c);
  e:= Memo3.Text; f:=Length(e);
  g:= Memo4.Text; h:=Length(g);
  i:= Memo5.Text; j:=Length(i);
  k:= Memo6.Text; l:=Length(k);
  m:= Label8.Caption; n:=Length(m);
  o:= Label10.Caption; p:=Length(o);
  q:= Label3.Caption; r:=Length(q);
  s:= Label1.Caption; t:=Length(s);

  FileStream:= TMemoryStream.Create;

    col:= StringGrid1.ColCount -1;
    row:= StringGrid1.RowCount -1;

    FileStream.Write(row, SizeOf(Word));
    FileStream.Write(col, SizeOf(Word));

    for x:= 1 to row do
      for y:= 1 to col do
       begin
        buff:= StringGrid1.Cells[y,x];
        len:= length(buff);

        FileStream.Write(len, SizeOf(Word));
        FileStream.Write(buff[1], len);
       end;
 
  FileStream.Write(b, SizeOf(Integer)); // Memo1
  FileStream.Write(a[1], b);

  FileStream.Write(d, SizeOf(Integer)); // Memo2
  FileStream.Write(c[1], d);

  FileStream.Write(f, SizeOf(Integer)); // Memo3
  FileStream.Write(e[1], f);

  FileStream.Write(h, SizeOf(Integer)); // Memo4
  FileStream.Write(g[1], h);

  FileStream.Write(j, SizeOf(Integer)); // Memo5
  FileStream.Write(i[1], j);

  FileStream.Write(l, SizeOf(Integer)); // Memo6
  FileStream.Write(k[1], l);

  FileStream.Write(n, SizeOf(Integer)); // Label8
  FileStream.Write(m[1], n);

  FileStream.Write(p, SizeOf(Integer)); // Label10
  FileStream.Write(o[1], p);

  FileStream.Write(r, SizeOf(Integer)); // Label3
  FileStream.Write(q[1], r);

  FileStream.Write(t, SizeOf(Integer)); // Label1
  FileStream.Write(s[1], t);

  memos:= ExtractFilePath(ParamStr(0))+'Bemerkungen\'+ ComboBox4.Text+'.txt';
  FileStream.SaveToFile(memos);
  FileStream.Free;
end;
Stream Laden

Delphi-Quellcode:

{Stream Laden}
procedure TForm7.memoladen;
var x, y, row, col,len :Word;
  memos :TFileName;
  FileStream :TMemoryStream;
  i,l :Integer;
  s :String;
begin
  FileStream := TMemoryStream.Create;
  memos:=ExtractFilePath(ParamStr(0))+'Bemerkungen\'+ ComboBox3.Text+'.txt';
  FileStream.LoadFromFile(memos);
 
  FileStream.Read(row, SizeOf(Word));
  FileStream.Read(col, SizeOf(Word));

  for x:= 1 to row do
   for y:= 1 to col do
    begin
     FileStream.Read(len, SizeOf(Word));
     SetLength(buff, len);
     FileStream.Read(buff[1], len);
     StringGrid1.Cells[y,x]:= buff;
    end;
  
  l := 0;
  FileStream.Position:=0;

  for i := 1 to 10 do
  begin
    FileStream.Read(l, SizeOf(Integer));
    setlength(s, l); // legt die Länge einer String- Variable fest
    FileStream.Read(s[1], l);

    case i of
      1: Memo1.Text:= s;
      2: Memo2.Text:= s;
      3: Memo3.Text:= s;
      4: Memo4.Text:= s;
      5: Memo5.Text:= s;
      6: Memo6.Text:= s;
      7: Label8.Caption:= s;
      8: Label10.Caption:= s;
      9: Label3.Caption:= s;
     10: Label1.Caption:= s;
    end;

  end;
  FileStream.Free;
end;
"... Wie gesagt, die Nutzer von 10, 12, 14 Zoll Display's werden deine Seite nicht in voller Pracht sehen können, ...

Surft Ihr mit dem Taschenrechner?"
 
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:12 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz