private async void _btnConvert_Click(object sender, EventArgs e) { try { string outputFilePath; if (Path.GetExtension(_txtInputFile.Text).Equals(".ass", StringComparison.InvariantCultureIgnoreCase)) { AssDocument inputDoc = new AssDocument(_txtInputFile.Text, (List <AssStyleOptions>)_lstStyles.DataSource); YttDocument outputDoc = new YttDocument(inputDoc); outputFilePath = Path.ChangeExtension(_txtInputFile.Text, ".ytt"); outputDoc.Save(outputFilePath); } else { SubtitleDocument inputDoc = SubtitleDocument.Load(_txtInputFile.Text); SrtDocument outputDoc = new SrtDocument(inputDoc); outputFilePath = Path.ChangeExtension(_txtInputFile.Text, ".srt"); outputDoc.Save(outputFilePath); } _lblConversionSuccess.Text = string.Format(Resources.SuccessfullyCreated0, Path.GetFileName(outputFilePath)); _lblConversionSuccess.Visible = true; await Task.Delay(4000); _lblConversionSuccess.Visible = false; } catch (Exception ex) { MessageBox.Show(ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } }
private async void _btnConvert_Click(object sender, EventArgs e) { try { string inputExtension = Path.GetExtension(_txtInputFile.Text).ToLower(); SubtitleDocument outputDoc; string outputExtension; switch (inputExtension) { case ".ass": { AssDocument inputDoc = new AssDocument(_txtInputFile.Text, (List <AssStyleOptions>)_lstStyles.DataSource); outputDoc = new YttDocument(inputDoc); outputExtension = ".ytt"; RefreshStyleList(inputDoc); break; } case ".ytt": case ".srv3": { YttDocument inputDoc = new YttDocument(_txtInputFile.Text); outputDoc = new AssDocument(inputDoc); outputExtension = inputExtension == ".ytt" ? ".reverse.ass" : ".ass"; break; } default: { SubtitleDocument inputDoc = SubtitleDocument.Load(_txtInputFile.Text); outputDoc = new SrtDocument(inputDoc); outputExtension = ".srt"; break; } } string outputFilePath = Path.ChangeExtension(_txtInputFile.Text, outputExtension); outputDoc.Save(outputFilePath); _lblConversionSuccess.Text = string.Format(Resources.SuccessfullyCreated0, Path.GetFileName(outputFilePath)); _lblConversionSuccess.Visible = true; await Task.Delay(4000); _lblConversionSuccess.Visible = false; } catch (Exception ex) { MessageBox.Show(ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } }