Hallo,
ich stehe gerade auf dem Schlauch. Ich habe eine Klasse geschrieben die ihre Daten (strings) in einen Stream Speichert. Leider kommt dabei nur Müll raus...
Delphi-Quellcode:
procedure WriteString(astring:
string;astream:TStream);
var c:integer;
s:
string;
begin
s := astring;
c := sizeof(s);
showmessage(s+'
'+inttostr(c));
//<-- hier zeigt er das richtige an
astream.
Write(c,sizeof(c));
astream.
Write(s,c);
end;
procedure TGameData.SaveToStream(AStream:TStream);
begin
WriteString(
name,astream);
WriteString(map,astream);
WriteString(
ip,astream);
WriteString(id,astream);
astream.
Write(typ,sizeof(typ));
end;
Ich speichere diese Daten in einen MemoryStream und dann auf Festplatte. Wenn ich mir das mit einem Hexeditor anschaue steht da aber nur Müll drin.
Woran könnte das liegen? Bei der Zeile "Showmessage" Zeigt er das richtige an. An den Daten kann es also nicht liegen...
Ich denke es liegt an der Prozedur "WriteString"...
Ich hoffe ihr könnt mir helfen,
igel457