// método para salvar contatos, onde 'c' é o contato a ser salvo static void SalvarContatos(Contatos c) { FileStream fs; byte[] byteArray; string strContato; string CONST_PATH_ARQUIVO_DADOS = @"C:\Users\Jaque\Documents\Visual Studio 2015\Projects\C#\ExemploContatosTelefonicos\ExemploContatosTelefonicos\MeusContatos.txt"; try { fs = new FileStream(CONST_PATH_ARQUIVO_DADOS, FileMode.Append, FileAccess.Write); if (fs.CanWrite) { // cria uma linha com os atributos separados por TAB strContato = Program.ParseContato(c); // para salvar o registro no arquivo utilizando a classe FileStream, // será necessário utilizar uma classe para converter texto em bytes byteArray = Encoding.ASCII.GetBytes(strContato); fs.Write(byteArray, 0, byteArray.Length); fs.Close(); } } catch (Exception message) { throw message; } }
// método para escrever os atributos do contato como uma linha para o arquivo, separando com TAB // onde 'c' é o contato a ser transformado, retornando string com os dados do contato static string ParseContato(Contatos c) { // objeto para trabalhar com concatenação de texto StringBuilder strBuilder; try { strBuilder = new StringBuilder(); // separa todos os atributos com TAB, representado pelo comando \t strBuilder.Append(c.ID); strBuilder.Append("\t"); strBuilder.Append(c.Nome); strBuilder.Append("\t"); strBuilder.Append(c.Telefone); strBuilder.Append("\t"); strBuilder.Append(c.Email); strBuilder.Append("\t"); // toda linha de um arquivo para o .Net é pelo comando \r strBuilder.Append("\r\n"); return(strBuilder.ToString()); } catch (Exception message) { throw message; } }
// método para inserir contatos static void AddContato() { Contatos contato = new Contatos(); try { // limpe a tela Console.Clear(); Console.WriteLine("Preencha os dados abaixo:"); Console.Write("ID: "); // armazene o dado informado em ID, na lista contato, já convertido de string para inteiro contato.ID = Convert.ToInt32(Console.ReadLine()); Console.Write("Nome: "); contato.Nome = Console.ReadLine(); Console.Write("Telefone: "); contato.Telefone = Console.ReadLine(); Console.Write("Email: "); contato.Email = Console.ReadLine(); Program.SalvarContatos(contato); } catch (Exception message) { Console.WriteLine(message); } }