Willkommen im Forum :)
Du hättest auch einen neuen Thread eröffnen können. 8 Jahre alte Threads müssen nicht ausgegraben werden.
Funktioniert das Öfnnen der Datei? Funktioniert das Schreiben?
Du könntest es mal so versuchen:
fwrite(Dungeon_List, sizeof(Dungeon_List), 1, file);
fread(Dungeon_List, sizeof(Dungeon_List), 1, file);
Außerdem kannst du diese Struktur nicht einfach in eine Datei schreiben, da der Datentyp String eine Klasse ist. Du würdest nur ihre Adresse in die Datei schreiben, nicht jedoch die Zeichenkette. Entweder du verwendest statt String Dungeon_Info[20]; z.B. char Dungeon_Info[256][20]; oder du behälst den Typ String bei. Dann musst du aber erst die Länge der vom String beinhalteten Zeichenkette in die Datei schreiben und dann die Zeichenkette selbst (mit z.B. Dungeon_Info[0].c_str()). Beim Lesen musst du genau umgekehrt vorgehen.
Beispiel:
fwrite(Dungeon_List.Dungeon_Info[0].length(), sizeof(Dungeon_List.Dungeon_Info[0].length()), 1, file);
fwrite(Dungeon_List.Dungeon_Info[0].c_str(), sizeof(Dungeon_List.Dungeon_Info[0].c_str()), 1, file);
Lesen:
int iLength;
fread(&iLength, sizeof(iLength), 1, file);
Dungeon_List.Dungeon_Info[0].resize(iLength);
fread(Dungeon_List.Dungeon_Info[0].c_str(), iLength, 1, file);
Außerdem solltest du dir überlegen, ob du nicht die neuen C++-Features für Dateioperationen utzen willst (fstream).