static void LerArquivo(ref Lista dados) { FileStream arq = new FileStream("dados.txt", FileMode.OpenOrCreate); StreamReader read = new StreamReader(arq); read.ReadLine(); string linha = ""; string[] linhasplit; while (linha != null) { linha = read.ReadLine(); if (linha != null) { linhasplit = linha.Split(';'); dados.Inserir(GeraContato(linhasplit)); } } read.Close(); arq.Close(); }
static void Main(string[] args) { Lista MyList = new Lista(); LerArquivo(ref MyList); TabelaHash hash = new TabelaHash(MyList.Tamanho() + 23); Arvore arvore = new Arvore(); Contato temp; string opc = ""; do { Console.WriteLine("1 - Inserir Contato"); Console.WriteLine("2 - Remover Contato da Lista"); Console.WriteLine("3 - Imprimir ordenado por Nome"); Console.WriteLine("4 - Imprimir ordenado por Email"); Console.WriteLine("5 - Pesquisar Arvore"); Console.WriteLine("6 - Pesquisar Hash"); Console.WriteLine("7 - Sair"); Console.Write("Opção: "); opc = Console.ReadLine(); switch (opc) { case "1": Contato x = new Contato(); Console.WriteLine("Codigo: "); x.Codigo = int.Parse(Console.ReadLine()); Console.WriteLine("Nome: "); x.Nome = Console.ReadLine(); Console.WriteLine("Telefone: "); x.Telefone = Console.ReadLine(); Console.WriteLine("Email: "); x.Email = Console.ReadLine(); arvore.Inserir(x); hash.Inserir(x); InserirArquivo(x); MyList.Inserir(x); break; case "2": Console.WriteLine("indice para remoção: "); int ind = int.Parse(Console.ReadLine()); MyList.Remover(ind); break; case "3": MyList.ImprimirNome(); break; case "4": MyList.ImprimirData(); break; case "6": Console.WriteLine(); Console.WriteLine(); string op1 = ""; do { Console.WriteLine("1 - Pesquisar Nome"); Console.WriteLine("2 - Pesquisar Nome"); Console.WriteLine("3 - Pesquisar Data"); Console.WriteLine("4 - Pesquisar Email"); Console.WriteLine("5 - Sair"); Console.WriteLine("opc: "); op1 = Console.ReadLine(); switch (op1) { case "1": Console.WriteLine("Codigo: "); int t = int.Parse(Console.ReadLine()); temp = hash.PesquisarCod(t); Console.WriteLine("{0} - {1} - {2} - {3}", temp.Codigo, temp.Nome, temp.DataNascimento, temp.Email); break; case "2": Console.WriteLine("Nome: "); string u = Console.ReadLine(); temp = hash.PesquisarNome(u); Console.WriteLine("{0} - {1} - {2} - {3}", temp.Codigo, temp.Nome, temp.DataNascimento, temp.Email); break; case "3": Console.WriteLine("Data: "); string e = Console.ReadLine(); temp = hash.PesquisarData(e); Console.WriteLine("{0} - {1} - {2} - {3}", temp.Codigo, temp.Nome, temp.DataNascimento, temp.Email); break; case "4": Console.WriteLine("Email: "); string ll = Console.ReadLine(); temp = hash.PesquisarEmail(ll); Console.WriteLine("{0} - {1} - {2} - {3}", temp.Codigo, temp.Nome, temp.DataNascimento, temp.Email); break; } } while (opc != "5"); break; case "5": Console.WriteLine(); Console.WriteLine(); string op2 = ""; do { Console.WriteLine("1 - Pesquisar Cod"); Console.WriteLine("2 - Pesquisar Nome"); Console.WriteLine("3 - Pesquisar Data"); Console.WriteLine("4 - Pesquisar Email"); Console.WriteLine("5 - Sair"); Console.WriteLine("opc: "); op2 = Console.ReadLine(); switch (op2) { case "1": Console.WriteLine("Codigo: "); int n = int.Parse(Console.ReadLine()); arvore.Pesquisar(n); break; case "2": Console.WriteLine("Nome: "); string s = Console.ReadLine(); arvore.PesquisarNome(s); break; case "3": Console.WriteLine("Data: "); string j = Console.ReadLine(); arvore.PesquisarData(j); break; case "4": Console.WriteLine("Email: "); string l = Console.ReadLine(); arvore.PesquisarEmail(l); break; } } while (opc != "5"); break; } AtualizarArquivo(MyList); } while (opc != "7"); }