Пример #1
0
    /// <summary>
    /// 加载二进制
    /// </summary>
    /// <typeparam name="T">类型</typeparam>
    /// <param name="path">二进制文件路径</param>
    public T LoadData <T>(string path) where T : BaseData
    {
        if (string.IsNullOrEmpty(path))
        {
            return(null);
        }
        if (m_AllConfigDict.ContainsKey(path))
        {
            Debug.LogError("重复加载配置表:" + path);
            return(null);
        }
        T data = Serialize.BinaryDeSerializeRun <T>(path);

#if UNITY_EDITOR
        if (data == null)
        {
            Debug.Log(path + "不存在二进制文件,尝试通过xml文件加载!");
            string xmlPath = path.Replace("Binary", "Xml").Replace(".bytes", ".xml");
            data = Serialize.XmlDeSerializeRun <T>(path);
        }
#endif
        if (data != null)
        {
            data.Init();
        }
        m_AllConfigDict.Add(path, data);
        return(data);
    }