Einzelnen Beitrag anzeigen

Benutzerbild von xZise
xZise

Registriert seit: 3. Mär 2006
Ort: Waldbronn
4.303 Beiträge
 
Delphi 2009 Professional
 
#5

Re: [TFileStream]-Speichern/Auslesen funktioniert nicht rich

  Alt 14. Apr 2007, 10:45
Zitat von Hawkeye219:
Hallo Fabian,

auch Strings sind dynamische Strukturen. Wenn du keinen Speicher für den Inhalt anforderst, wirst du auch nichts laden können, sondern riskierst nur eine Schutzverletzung:

Delphi-Quellcode:
// b := '';
SetLength (b, 3);
container.Read(b[1], 3);
[...]
SetLength (b, 5);
container.Read(b[1], 5);
[...]
container.Read(FHeader.FileCount, SizeOf(FHeader.FileCount));
SetLength (FHeader.Sizes, FHeader.FileCount);
Ah... Danke Ich dachte, dass hätte sich mit der Längenangabe (string[3]) getan

Zitat von Hawkeye219:
Den Inhalt von Sizes könntest du sogar "in einem Rutsch" laden.
Und wie geht das? Indem ich das array und nicht die Einträge speichere?
Zitat von Hawkeye219:
Warum verwendest du für die Signaturen keine ShortStrings?
Weiss ich auch nicht Kann man da den auch längen festsetzen?
[edit]Nein => Länge immer 256 Byte Und da sind die anderen Strings kleiner (4 und 6 Byte)[/edit]

PS: Jetzt funktionierts Danke Hawkeye!
Fabian
Eigentlich hat MS Windows ab Vista den Hang zur Selbstzerstörung abgewöhnt – mkinzler
  Mit Zitat antworten Zitat