コード例 #1
0
        static void Main(string[] args)
        {
            try
            {
                if (args.Length != 2)
                {
                    throw new Exception("É necessário informar caminho do arquivo de entrada (log da corrida) e o caminho onde salvar o relatório final.");
                }

                var corridaLogFile     = args[0];
                var relatorioFinalPath = args[1];

                var listaVoltasCorrida = new List <IVoltaCorrida>();

                foreach (string voltaInf in File.ReadLines(corridaLogFile))
                {
                    if (voltaInf.Contains("Hora"))
                    {
                        continue;
                    }
                    listaVoltasCorrida.Add(LogReader.VoltaCorridaMapper(voltaInf));
                }

                // instancia classe responsavel por calcular resultado da corrida
                CorridaService resultado = new CorridaService();

                // inicia o processo de cálculo do resultado final da corrida
                string relatorio = resultado.CalcularResultadoCorrida(listaVoltasCorrida);

                File.WriteAllText(relatorioFinalPath, relatorio);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }