// 指定特定存档对象,将其替代原有对象(如果有的话),并从文件读取到这个对象
        public static void LoadTo(ISaveData instance)
        {
            var saveTag = instance.SaveTag();

            if (_fileNames.ContainsKey(saveTag))
            {
                var path = GetPath(_fileNames[saveTag]);
                if (File.Exists(path))
                {
                    instance.LoadFromJson(AESUtils.AESDecrypt(File.ReadAllBytes(path)));
                }
            }
        }
 static void ClearFilesByIndexFile(string path)
 {
     if (File.Exists(path))
     {
         var json = AESUtils.AESDecrypt(File.ReadAllBytes(path));
         var data = JsonMapper.ToObject(json);
         foreach (var key in data.Keys)
         {
             File.Delete(GetPath(data.TryGetString(key)));
         }
         File.Delete(path);
     }
 }
        // 从文件读取索引
        static void LoadFileNames()
        {
            var indexFilePath = GetPath(_saveFile);

            if (File.Exists(indexFilePath))
            {
                byte[] bytes = File.ReadAllBytes(indexFilePath);
                if (bytes.Length > 0)
                {
                    var json = AESUtils.AESDecrypt(bytes);
                    var data = JsonMapper.ToObject(json);
                    foreach (var key in data.Keys)
                    {
                        _fileNames.Add(key, data.TryGetString(key));
                    }
                }
            }
        }