public void Convert() { if (config.FileConversionOption == FileConversionOption.Single) { logger.AppendLog("Checking file path..."); if (!File.Exists(config.Input)) { logger.AppendError("File not found."); throw new FileNotFoundException(); } logger.AppendLog("File found."); string outputDir = appEnv.CreateOutputDirectory(Path.GetDirectoryName(config.Input)); appEnv.InitLogFile(outputDir); string outputFile = appEnv.GetOutputFileName(config.Input, outputDir, NamedValue.ExcelFileExtension); if (File.Exists(outputFile)) { if (config.OverwriteOutputFile == FileOverWriteFlag.no) { logger.AppendLog("Output file exists. Overwriting file is unselected."); logger.AppendLog("Skipping file conversion."); return; } } ConvertFile(config.Input, outputFile); } else if (config.FileConversionOption == FileConversionOption.Multiple) { logger.AppendLog("Checking input directory path..."); bool bResult = appEnv.ValidateDirectory(config.Input); logger.AppendLog("Input directory found."); if (bResult) { string outputDir = appEnv.CreateOutputDirectory(config.Input); appEnv.InitLogFile(outputDir); logger.AppendLog("Selected input folder -" + config.Input); logger.AppendLog("Looking for word documents in the selected folder..."); logger.AppendLog(string.Empty); string[] files = Directory.GetFiles(config.Input, "*.docx"); if (files.Length == 0) { string errorMsg = "No matching files found. " + "Please ensure input file is available for conversion."; logger.AppendError(errorMsg); throw new Exception(errorMsg); } foreach (string file in files) { logger.AppendLog("FIle: " + file); string outputFile = appEnv.GetOutputFileName(file, outputDir, NamedValue.ExcelFileExtension); if (config.OverwriteOutputFile == FileOverWriteFlag.no && File.Exists(outputFile)) { logger.AppendLog("Output file exists. Overwriting file is unselected."); logger.AppendLog("Skipping file conversion."); logger.AppendLog(outputFile); } else { ConvertFile(file, outputFile); logger.AppendLog("***************************************"); logger.AppendLog(string.Empty); } } } } else { string errorMsg = "Incorrect File Conversion option selected." + " File conversion option should be Single or Multiple."; logger.AppendLog(errorMsg); throw new Exception(errorMsg); } logger.AppendLog(string.Empty); }