public static void ExecuteAndLogToFile(ArgsParser arguments)
        {
            FileStream file;

            if (File.Exists(arguments.OutputFileName))
            {
                file = new FileStream($"{arguments.OutputFileName}", FileMode.Append);
            }
            else
            {
                file = new FileStream($"{arguments.OutputFileName}", FileMode.OpenOrCreate);
            }
            var consoleOutput = Console.Out;

            using (var sWriter = new StreamWriter(file))
            {
                //  Trace the console out to the file.
                Console.SetOut(sWriter);
                var analyzer = new NGramAnalyzer(2);
                analyzer.AnalyzeFile(arguments);

                //  Restore the original console output.
                Console.SetOut(consoleOutput);
            }
        }
        public static void ExecuteInteractively(ArgsParser arguments)
        {
            var analyzer = new NGramAnalyzer(2);

            analyzer.AnalyzeInputs(arguments);
        }