0

第一次在 XNA 中使用序列化,如果我看得太明显了,请原谅我。

基本上,在我的游戏中,我有两个对象,Square(存储游戏中每个方格的数据)和一个名为 Enemy(存储有关敌人的信息和行为)的对象。

我想序列化这些数据,以便以后保存和加载它。

我将它们都放入了一个名为 Data 的对象中并对其进行了序列化。

但是 xml 数据如下所示:

<?xml version="1.0" encoding="utf-8"?>
<Data xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <squares>
    <Square />
    <Square />
    <Square />
    <Square />
    <Square />
    <Square />
    <Square />
    <Square />
    <Square />

ETC

我的代码:

Data.cs
public class Data
    {       
       public Square[] squares;
       public Enemy[] enemies;

       public Data()
        {

        }
    }

保存功能:

    Data data = new Data();
    data.squares = squares;
    data.enemies = enemies;
    StreamWriter file2 = new StreamWriter(Content.RootDirectory + "\\xml.txt");
    XmlSerializer x = new XmlSerializer(typeof(Data));
    x.Serialize(file2, data);

我究竟做错了什么?或者实现这一目标的最佳方法是什么?

4

0 回答 0