public LanguageModule LoadModule(string moduleName)
        {
            string fileName = moduleName + currentLanguageKey;

            if (languageModuleDict.TryGetValue(fileName, out LanguageModule module))
            {
                return(module);
            }
            TextAsset file = null;

#if UNITY_EDITOR
            if (!Application.isPlaying)
            {
                file = UnityEditor.AssetDatabase.LoadAssetAtPath <TextAsset>("Assets/Resources/" + data.ResourcesPathSetting.LocalizationConfig + fileName + ".txt");
            }
            else
#endif
            {
                file = utility.LoadResources.LoadAsset <TextAsset>(data.ResourcesPathSetting.LocalizationConfig + fileName);
            }
            if (file == null)
            {
                return(null);
            }

            module = new LanguageModule(file.bytes);
            if (module.IsEmpty)
            {
                return(null);
            }

            languageModuleDict.Add(fileName, module);
            return(module);
        }
        public string GetLocalizedString(string key, string moduleName)
        {
            LanguageModule module = LoadModule(moduleName);

            if (module == null)
            {
                return(string.Format("#{0}_{1}", key, moduleName));
            }

            return(module.GetString(key));
        }