public void AbreTxt(ListPessoa listP, string path) { try { using (StreamReader sr = new StreamReader(path)) { string[] posicoes; posicoes = sr.ReadToEnd().Split(';'); for (int i = 2; i < posicoes.Count(); i += 3) { DateTime dataHoje = DateTime.Now; DateTime dataConvertida; DateTime.TryParseExact(posicoes[i], "dd/MM/yyyy", new CultureInfo("pt-BR"), DateTimeStyles.None, out dataConvertida); if (dataConvertida.Day.Equals(dataHoje.Day) && (dataConvertida.Month.Equals(dataHoje.Month))) { Console.Write($"{posicoes[i - 2]} {posicoes[i - 1]} faz aniversario hoje"); } Pessoa p = new Pessoa(); p.DataAniversario = dataConvertida; p.SobreNome = posicoes[i - 1]; p.Nome = posicoes[i - 2]; listP.CriaPessoa(p); } } } catch (Exception ex) { Console.WriteLine("O txt não foi encontrado e será criado ao finalizar o programa"); } }
public static string CalculaProximoAniversario(ListPessoa listP, int escolhePessoa) { if (listP.CalculaAniversario(listP.pessoas[escolhePessoa].DataAniversario) < 0) { DateTime date1 = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day); DateTime date2 = new DateTime(DateTime.Now.Year + 1, listP.pessoas[escolhePessoa].DataAniversario.Month, listP.pessoas[escolhePessoa].DataAniversario.Day); TimeSpan intervalProximoAniversario = date1 - date2; return($"Esta pessoa já fez aniversario e faltam {-intervalProximoAniversario.Days} para sue proximo aniversario"); } else if (listP.CalculaAniversario(listP.pessoas[escolhePessoa].DataAniversario) > 0) { return($"Faltam: {listP.CalculaAniversario(listP.pessoas[escolhePessoa].DataAniversario)} para seu aniversario"); } else if (listP.CalculaAniversario(listP.pessoas[escolhePessoa].DataAniversario) == 0) { return("Seu aniversario é hoje"); } return(""); }