public void AddPoFileSource(PoFile ToAddPofile) { foreach (PoFileValues Value in ToAddPofile.Values) { LocalizationFileLanguageListValues NewLanguageListValues = new LocalizationFileLanguageListValues(Value); LanguageValues.Add(NewLanguageListValues); } }
public void CombinePoFile(PoFile ToAddPofile, LanguageCell Language) { foreach (PoFileValues Value in ToAddPofile.Values) { CultureInfo NewcultureInfo = new CultureInfo(Language.Language); LocalizationFileLanguageListValues NewLanguageListValues = new LocalizationFileLanguageListValues(Value, NewcultureInfo, Language.Cell); LanguageValues.Add(NewLanguageListValues); } }
public void AddPoFile(PoFile ToAddPofile, LanguageCell Language) { foreach (PoFileValues Value in ToAddPofile.Values) { CultureInfo NewcultureInfo = new CultureInfo(Language.Language); LocalizationFileLanguageListValues NewLanguageListValues = new LocalizationFileLanguageListValues(Value, NewcultureInfo, Language.Cell); LocalizationFileLanguageListValues TranslateValue = LanguageValues.Find(x => x.Key == NewLanguageListValues.Key); if (TranslateValue != null) { foreach (var item in NewLanguageListValues.ListValues) { TranslateValue.ListValues.Add(item); } } } }
private void LoadLocalizationFile(FileInfo Path, string SplitChar) { string Data = File.ReadAllText(Path.FullName); string[] DataValues = Data.Split(new[] { SplitChar }, StringSplitOptions.None); foreach (var Values in DataValues) { string ConvertValues = Values; if (ConvertValues != "") { if (ConvertValues.Substring(ConvertValues.Length - 1) == "\r") { ConvertValues = ConvertValues.Remove(ConvertValues.Length - 1); } } LocalizationFileLanguageListValues NewList = new LocalizationFileLanguageListValues(ConvertValues, KeyCell, SourceCell, SourceLocationCell, Languages); if (NewList.Valid) { LanguageValues.Add(NewList); } } }
static public LocalizationFile CombineLocalizationFile(LocalizationFile File_01, LocalizationFile File_02, bool UpdateKeys = false) { LocalizationFile NewLocalizationFileInfo = new LocalizationFile(); NewLocalizationFileInfo.KeyCell = File_01.KeyCell; NewLocalizationFileInfo.SourceLocationCell = File_01.SourceLocationCell; NewLocalizationFileInfo.SourceCell = File_01.SourceCell; NewLocalizationFileInfo.Languages = File_01.Languages; foreach (LocalizationFileLanguageListValues item in File_01.LanguageValues) { string CheckValue = item.SourceValue.Trim(); if (item.Key == "D6A0199D462519E233F60DBDA1B604B2") { Console.WriteLine(""); } LocalizationFileLanguageListValues FindValue = File_02.LanguageValues.Find(x => x.SourceValue.Trim() == CheckValue); if (FindValue != null) { foreach (var Value_source in item.ListValues) { foreach (var Value_combine in FindValue.ListValues) { if (Value_source.CultureInfo.DisplayName == Value_combine.CultureInfo.DisplayName) { if (Value_source.Value == "" && Value_combine.Value != "" && Value_source.SourceValue != Value_combine.Value) { Value_source.Value = Value_combine.Value; } break; } } } NewLocalizationFileInfo.LanguageValues.Add(item); } else { NewLocalizationFileInfo.LanguageValues.Add(item); } } if (UpdateKeys) { LocalizationFile NewLocalizationFileInfoKey = new LocalizationFile(); NewLocalizationFileInfoKey.KeyCell = File_01.KeyCell; NewLocalizationFileInfoKey.SourceLocationCell = File_01.SourceLocationCell; NewLocalizationFileInfoKey.SourceCell = File_01.SourceCell; NewLocalizationFileInfoKey.Languages = File_01.Languages; foreach (LocalizationFileLanguageListValues ItemUpdate in NewLocalizationFileInfo.LanguageValues) { LocalizationFileLanguageListValues FindKey = File_02.LanguageValues.Find(x => x.Key == ItemUpdate.Key); if (FindKey != null) { foreach (var Value_source in ItemUpdate.ListValues) { foreach (var Value_combine in FindKey.ListValues) { if (Value_source.CultureInfo.DisplayName == Value_combine.CultureInfo.DisplayName) { Value_source.Value = Value_combine.Value; NewLocalizationFileInfo.LanguageValues.Add(ItemUpdate); break; } } } } } return(NewLocalizationFileInfoKey); } return(NewLocalizationFileInfo); }