2012-12-27 2 views
2

В настоящее время я использую XNA 4.0 Game Studio и шаблон оформления оформления игры Window, который предоставляет Visual Studio 2010 для разработки игры. Есть ли какие-либо предложения о том, как сохранить и загрузить состояние игры? Раньше у меня была разработка оконной игры телефона, и данные хранятся внутри IsolStorage. Есть ли сходство для Window Game?Сохраните и загрузите состояние игры в окне игры

  using (IsolatedStorageFile file = IsolatedStorageFile.GetUserStoreForAssembly()) 
      { 
       using(IsolatedStorageFileStream stream = file.OpenFile("class123.xml",FileMode.Create)) 
       { 
        XmlWriterSettings setting = new XmlWriterSettings(); 
        setting.Indent = true; 
        using(XmlWriter writer = XmlWriter.Create(stream,setting)) 
        { 
         XmlSerializer serializer = new XmlSerializer(typeof(Student)); 
         serializer.Serialize(stream,new Student(){Name = "AhLim"}); 
        } 

        using (XmlReader reader = XmlReader.Create(stream)) 
        { 
         XmlSerializer serializer = new XmlSerializer(typeof(Student)); 
         studentA = (Student)serializer.Deserialize(reader); 
        } 
       } 
      } 

Вот код, который я недавно использовал в Window Game Applicaiton. Однако, когда я добираюсь до части Deserialize, он показывает, что InvalidOperationException было необработанным и ошибка в документе XML (0,0). Могу я знать, где проблема?

+0

Windows (XP/Vista/7) имеет изолированное хранилище –

ответ

1

Попробуйте

serializer.Serialize(writer, new Student() { Name = "AhLim" }); 

вместо

serializer.Serialize(stream, new Student() { Name = "AhLim" }); 

Похоже IsolatedStorageFileStream использует неправильную кодировку.

3

Код, используемый в игре с Windows Phone, должен отлично работать на ПК. Данные будут сохранены в C: \ Users \\ Documents \ SavedGames

Смежные вопросы