AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Daten mit AssignFile ändern oder anfügen
Thema durchsuchen
Ansicht
Themen-Optionen

Daten mit AssignFile ändern oder anfügen

Ein Thema von Ralf Stehle · begonnen am 31. Okt 2005 · letzter Beitrag vom 31. Okt 2005
 
Der_Unwissende

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

Re: Daten mit AssignFile ändern oder anfügen

  Alt 31. Okt 2005, 12:59
Hey,
ich glaube du kannst das alles viel leichter realisieren, indem du auf AssignFile verzichtest und ein TMemoryStream-Objekt benutzt. Da hast du einen Zeiger auf Memory, was halt wirklich der Speicherbereich ist, den du möchtest. Ein TStream hat immer eine Größe (size) mit der du gleich weißt, wie groß deine Datei ist (und ist auch noch schnell).
Mein Ansatz wäre es, dass du dir ein solches TMemoryStream Objekt anlegst. Dann noch ein Array dyn. Größe, dass setzt du auf das Maximum von der reelen Dateigröße und der Größe, die eine Datei hätte wenn du deine Bytes schreibst und dann kopierst du mit CopyMememory (WindowsApi) einfach den inhalt der Datei in dieses Array.
In diesem Array änderst du die Stellen, die du ändern möchtest und schreibst das Array einfach in den Stream (den Inhalt vorher löschen oder ab Position := 0 schreiben).

Hab leider gerade kein Delphi da und kann dir nicht wirklich ein Bsp. schicken, aber vielleicht später, hoffe ist grob klar?
Sonst einfach nochmal fragen.

Gruß Der Unwissende
  Mit Zitat antworten Zitat
 


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:06 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