示例#1
0
    public void Save()
    {
        Player.Save();
        if (UseXml)
        {
            MultiReplayData data = new MultiReplayData(new FileInfo(Player.UseZip && Player.UseCompoundArchive ? Player.CompoundZipName : Player.FileName, Player.FileName, Player.UseZip));

            if (!Player.UseZip)
            {
                XmlSerializer serializer = new XmlSerializer(typeof(MultiReplayData));
                FileStream    file       = File.Open(Player.SavePath + "/" + Player.CustomDirectory + "/" + Player.FileName + ".txt", FileMode.OpenOrCreate);
                serializer.Serialize(file, data);
                file.Close();
            }
            else
            {
                string filestring = Player.SavePath + "/" + Player.CustomDirectory + "/" + (Player.UseCompoundArchive ? Player.CompoundZipName : Player.FileName) + ".zip";
                Compression.AddItemToCompoundArchive(filestring, Player.FileName + ".txt", data, new XmlSerializer(typeof(MultiReplayData)));
            }
        }
    }
示例#2
0
    public void Load()
    {
        Player.Load();

        //if (UseXml)
        {
            if (!Player.UseZip)
            {
                string path = Player.SavePath + "/" + Player.CustomDirectory + "/" + Player.LoadFileName + ".txt";
                if (File.Exists(path))
                {
                    XmlSerializer serializer = new XmlSerializer(typeof(MultiReplayData));
                    StreamReader  reader     = new StreamReader(path);
                    XmlData = (MultiReplayData)serializer.Deserialize(reader);
                    reader.Close();
                }
            }
            else
            {
                XmlData = Compression.GetItemFromCompoundArchive <MultiReplayData>(Player.SavePath + "/" + Player.CustomDirectory + "/" + (Player.UseCompoundArchive ? Player.CompoundZipName : Player.LoadFileName) + ".zip", Player.LoadFileName + ".txt", new XmlSerializer(typeof(MultiReplayData)));
            }
            XmlDataIndex = 0;
        }
    }