Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Caption in Stream speichern (https://www.delphipraxis.net/24352-caption-stream-speichern.html)

citybreaker 19. Jun 2004 17:36


Caption in Stream speichern
 
Hallo,
ich wollt mir mal das ganze Streamzeugs angucken und hab da
mal ne Frage. Wie kann man zum Beispiel Label1.Caption in einen
Stream speichern?!

mirage228 19. Jun 2004 18:12

Re: Caption in Stram speichern
 
Hi,

da habe ich was für dich:

Delphi-Quellcode:
function ReadStringFromStream(F: TStream): String;
var
   aStrLen : Integer;
begin
  F.ReadBuffer(aStrLen,SizeOf(Integer));
  SetLength(Result,aStrLen);
  if aStrLen > 0 then
  F.ReadBuffer(Pointer(Result)^,aStrLen);
end;

procedure WriteStringToStream(F: TStream; aStr: String);
var
   aStrLen : Integer;
begin
  aStrLen:=Length(aStr);
  F.WriteBuffer(aStrLen,SizeOf(Integer));
  if aStrLen > 0 then
  F.WriteBuffer(Pointer(aStr)^,aStrLen);
end;
Ich hoffe, dass es dir hilft ^^

mfG
mirage228

citybreaker 19. Jun 2004 18:28

Re: Caption in Stream speichern
 
Öh und wie kann ich die procedure nun anwenden?

Delphi-Quellcode:
procedure TForm1.Button1.OnClick...
begin
  WriteStringToStream(, Label1.Caption); // << Was kommt vor das Komma?!
end;

mirage228 19. Jun 2004 18:31

Re: Caption in Stream speichern
 
Hi,

ein kleines Beispiel:

Delphi-Quellcode:
var
  Stream: TFileStream;
begin
  Stream := TFileStream.Create('datei.erw', fmCreate); // bzw. fmOpenWrite, falls die Datei existiert
  try
    WriteStringToStream(Stream, Edit1.Text);
  finally
    Stream.Free;
  end;
end;
Das ganze funktioniert natürlich mit allen anderen Stream (TMemoryStream, TStringStream, ...)

mfG
mirage228

citybreaker 19. Jun 2004 18:32

Re: Caption in Stream speichern
 
Ah cool, danke.
:dp: :party:


Wo ist der untserschied ziwschen TFileStream und TStringStream ?!

mirage228 19. Jun 2004 18:35

Re: Caption in Stream speichern
 
Hi,

ein kleiner Blick in die Hilfe reicht:

Code:
TStringStream ist ein Streamobjekt, mit dem Sie zu Ein-/Ausgabezwecken auf Informationen zugreifen können, die als langer String gespeichert sind.
Code:
TFileStream wird von Anwendungen genutzt, um Daten aus einer Datei auf der Festplatte zu lesen oder in eine solche Datei zu schreiben.
mfG
mirage228

citybreaker 19. Jun 2004 18:41

Re: Caption in Stream speichern
 
Äh ja aber wo kann ich jetzt beim "lesen" angeben
wo der Text erscheinen soll? Raff das noch nicht ganz
sry. .

mirage228 19. Jun 2004 18:46

Re: Caption in Stream speichern
 
Zitat:

Zitat von citybreaker
Äh ja aber wo kann ich jetzt beim "lesen" angeben
wo der Text erscheinen soll? Raff das noch nicht ganz
sry. .


Wie meinste das?

Wenn du die Daten liest, musst du es in der selben Reihenfolge machen, wie du sie gespeichert hast.

mfG
mirage228


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:32 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz