コード例 #1
0
        public static void SaveConfigToFile(string Path = "")
        {
            if (LoadedTranslations == null || LoadedTranslations.Count == 0)
            {
                return;
            }

            if (BaseLanguage == null)
            {
                baseLanguage = LoadedTranslations.First().Key;
            }

            if (DefaultLanguage == null)
            {
                defaultLanguage = LoadedTranslations.First().Key;
            }

            var config = new XML.LanguageConfig()
            {
                BaseLanguage = BaseLanguage.Name, DefaultLanguage = DefaultLanguage.Name
            };
            var list = new List <XML.Language>();

            foreach (var language in LoadedTranslations.Values)
            {
                list.Add(new XML.Language()
                {
                    Name = language.Language
                });
            }
            config.Languages = list.ToArray();

            var serializer = new XmlSerializer(typeof(XML.LanguageConfig));

            using (var writer = new StreamWriter(GetConfigFullPath(Path)))
                serializer.Serialize(writer, config);
        }
コード例 #2
0
        public static XML.LanguageConfig LoadConfigFromFile(string Path = "")
        {
            var serializer = new XmlSerializer(typeof(XML.LanguageConfig));

            Path = GetConfigFullPath(Path);
            if (!File.Exists(Path))
            {
                var file = File.Create(Path);
                file.Close();
            }

            XML.LanguageConfig config;
            using (var reader = new StreamReader(Path))
                try
                {
                    config = (XML.LanguageConfig)serializer.Deserialize(reader);
                }
                catch
                {
                    config = new XML.LanguageConfig();
                }

            return(config);
        }