![]() |
byte in memorystream einfügen - wie am einfachsten ?
hi habe folgendes 'problem':
ich will an ein memorystream ein byte 'anhängen' dazu hatte ich mir überlegt: [ausschnitt]
Delphi-Quellcode:
aber damit verändere ich nur das letzte byte ...
myStream := TMemoryStream.Create;
myStream.LoadFromFile(eine Datei); myStream.Position := myStream.Size-1; myStream.Write(Byte,1); wo liegt mein denkfehler ? |
Re: byte in memorystream einfügen - wie am einfachsten ?
Guten Morgen,
mit
Delphi-Quellcode:
die Größe des Streams erweitern und dann wie gehabt das letzte Byte verändern.
myStream.size := myStream.size +1
Grüße Klaus |
Re: byte in memorystream einfügen - wie am einfachsten ?
@Klaus01: Er will das letzte Byte verändern und nicht ein neues hinzufügen...
@soulies: Den geänderten Stream auch wieder zu speichern? Bisher lädst du ihn in den Speicher und veränderst ihn. Sollte es vielleicht anstatt TMemoryStream TFileStream heissen? |
Re: byte in memorystream einfügen - wie am einfachsten ?
@Muetze1:
Ich habe dieses gelesen: Zitat:
Grüße Klaus |
Re: byte in memorystream einfügen - wie am einfachsten ?
Ok, das habe ich wiederrum irgendwie überlesen. Ok, damit ist es nicht eindeutig was er nun machen will.
@soulies: Wenn du wirklich anhängen willst, dann setze die Position nicht auf ein Byte vor dem Ende der Datei sondern auf das Ende der Datei und schreibe dann dein Byte. Dein bisheriger Code überschreibt immer das letzte Byte im Stream. Die Grösse muss nicht zuvor vergrössert werden. |
Re: byte in memorystream einfügen - wie am einfachsten ?
Du darfst die Position nicht zurücksetzen.
Du stehst nach dem LoadFromFile schon an der letzten Position. Daher brauchst du jetzt nur noch zu schreiben und das Byte wird angehängt.
Delphi-Quellcode:
myStream := TMemoryStream.Create;
myStream.LoadFromFile(eine Datei); //myStream.Position := myStream.Size-1; myStream.Write(Byte,1); |
Re: byte in memorystream einfügen - wie am einfachsten ?
danke für die schnellen und hilfreichen antworten
cya |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:55 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 by Thomas Breitkreuz