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); }
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); }