/// <summary> /// Основной метод создания переведенного файла с субтитрами. /// </summary> /// <param name="pathToSrtFile">Путь к файлу</param> /// <param name="lang">Язык для перевода</param> public void CreateRuSubtitles(string pathToSrtFile, string lang) { string fileName = Path.GetFileName(pathToSrtFile); string currentPath = Path.GetDirectoryName(pathToSrtFile); using (var fileStream = File.OpenRead(pathToSrtFile)) { Console.WriteLine(("").PadRight(100, '=')); Console.WriteLine($"Файл:{currentPath} {fileName}"); var items = GetSubtitleLines(fileStream, Encoding.UTF8); var text = new StringBuilder(); // Собираем весь текст для перевода. foreach (var obj in items) { text.Append(obj.Text + " "); } Console.WriteLine(("").PadRight(100, '=')); Console.WriteLine(text); // Перевод. var response = translate.TextTranslate(text.ToString(), lang).Result; Console.WriteLine(("").PadRight(100, '-')); Console.WriteLine(response); SetTranslate(ref items, response); fileName = SetFileNameTranslate(fileName, lang); SaveSrtFile(fileStream, Encoding.UTF8, items, currentPath + "\\" + fileName); } }