Einzelnen Beitrag anzeigen

NickelM

Registriert seit: 22. Jul 2007
Ort: Carlsberg
445 Beiträge
 
Delphi 2009 Professional
 
#1

Problem mit TFileStream und Write Read

  Alt 8. Jul 2008, 16:51
Hallo Leute,
Bei meinem Spiel schreibe ich u.a. Strings in eine TFileStream-Datei.
Alles klappt aber immer öfters kommen Problemme mit Read von Strings auf.
Wenn ich PChar nehme klappt des auch net. Das dumme ist bei manchen Strings klappt es bei anderen wiederrum nicht.
Ich flip hier noch aus, weil dass net klappt und ich keine ahnung hab warum
Benutze Delphi 5.
hier der Code und ein Paar typen:
Delphi-Quellcode:
//Write-Code
Write(Charakter,SizeOf(TCharakter)); //1
Write(Schwierigkeitsgrad,SizeOf(TSchwierigkeitsgrad));
Charaktername := Charaktername_Feld;
Write(Charaktername,SizeOf(Charaktername));

AktuQuestname := AktuellesQuest.Questname;
Write(AktuQuestname,SizeOf(AktuQuestname));

//Read-Code
Read(Charakter,SizeOf(TCharakter)); //1
Read(Schwierigkeitsgrad,SizeOf(TSchwierigkeitsgrad));
Read(Charaktername,SizeOf(Charaktername));
Charaktername_Feld := Charaktername;
GetCharakterInfo;
Read(AktuQuestname,SizeOf(AktuQuestname));
AktuellesQuest.Questname := AktuQuestname;
Hier die Typen:
Delphi-Quellcode:
TSchwierigkeitsgrad = (sLeicht,sMittel,sSchwer);

  TCharakter = record
  //Name : String;
  Geschicklichkeit : Longword;
  Intelligenz : Longword;
  Handwerk : Longword;
  Kombinationsgabe : Longword;
  Fuhrung : Longword;
  SkillpunkteLeft : Longword;
  ErspielteSkillpunkte : Longword;
  end;

  TAktuellesQuest = record
  Questname : String;
  Questtext : TStringList;
  Waren : TCollection;
  Erfahrungspunkte : Longword;
  end;
Die anderen sind Lokale Variablen, die bei laden und speichern sind.
Das dumme ist bei Questname hatte es geklappt die ganze Zeit jetzt hab ich noch den String von TCharakter gefüllt gehabt und gespeichert und schon konnte ich es nicht mehr laden den gesammten Record. Bei den anderen hatte ich Variablen gehabt, wass ich da auch jetzt gemachte hatte und es ging nicht. Bei den anderen gings.
Warum????????????
Nickel
  Mit Zitat antworten Zitat