static void Main(string[] args) { if (args.Length == 0 || args.Length > 2) { PrintUsage(); return; } if (!File.Exists(args[0])) { Console.WriteLine($"Die angegebene input-Datei {args[0]} existiert nicht"); return; } var contenOfStatement = File.ReadLines(args[0], Encoding.GetEncoding(0)); StatementConverter converter = SelectConverterWithHighestConfidence(contenOfStatement); var resultText = new List <string>() { YnabStatementLine.YnabHeader() }; var result = converter.GetConvertedStatements(); resultText.AddRange(result.ToStringList()); string outputName = ChooseOutputFileName(args, converter); Console.WriteLine($"Write output to file \"{outputName}\""); File.WriteAllLines(outputName, resultText, Encoding.UTF8); }
private static string ChooseOutputFileName(string[] args, StatementConverter converter) { var outputName = string.Empty; if (args.Length == 2) { outputName = args[1]; } else { outputName = converter.NameOfStatement(); } outputName = EnsureCorrectFileEnding(outputName); return(outputName); }