Como salvar dados em um arquivo CSV em um aplicativo C#
Conheça os arquivos CSV e aprenda como criá-los usando C#.
Salvar dados em um arquivo pode ser uma técnica muito poderosa quando se trata de análise de dados ou relatórios. Se estiver criando um aplicativo C#, você poderá criar arquivos CSV para salvar seus dados.
Arquivos CSV são arquivos de texto nos quais você pode armazenar valores. Você pode separar cada ponto de dados adicionando vírgulas entre os valores. Isso permite que você organize seus dados em linhas e colunas. Você pode então visualizar essas linhas e colunas ao abrir o arquivo no Microsoft Excel.
Como você armazena dados em um arquivo CSV?
Um arquivo CSV é um arquivo de texto onde você pode separar pontos de dados e valores com vírgulas.
Ao armazenar dados em um arquivo usando um programa, adicione cada linha como uma linha separada. Para fazer as colunas, formate os dados adicionando uma vírgula para separar cada valor ou ponto de dados.
StringBuilder output = new StringBuilder();
output.AppendLine(string.Join(",", new String[] { "1", "2", "3" }));
// CSV File Output = 1,2,3
Como criar o aplicativo de console e os dados de teste
Crie um aplicativo de console C# usando o Visual Studio e adicione alguns dados de teste ao programa.
Abra o Visual Studio e clique em Criar um novo projeto.
Clique em Aplicativo de console e clique em Avançar.
Dê um nome ao seu projeto e armazene-o em um local de sua escolha. Clique em Avançar.
- Deixe o Target Framework padrão e clique em Criar. Isso faz com que o Visual Studio gere um aplicativo de console C# padrão "Hello World".
Na parte superior do programa, importe System.IO e System.Text. Isso permitirá que você armazene dados no arquivo CSV e também ajudará a formatar a string para o formato CSV.
using System.IO; using System.Text;
Adicione alguns dados de teste ao programa. Abaixo da classe Main Program, crie uma nova classe chamada Student. Use a classe Aluno para armazenar informações sobre os alunos, como carteira de estudante, nome, sobrenome e data de nascimento. Se você não está familiarizado com o funcionamento das classes, pode aprender mais sobre Classes em C#.
public class Student { public int StudentId; public string FirstName; public string LastName; public string Dob; public Student(int StudentId, string FirstName, string LastName, string Dob) { this.StudentId = StudentId; this.FirstName = FirstName; this.LastName = LastName; this.Dob = Dob; } }
Dentro da função Main(), remova o código "Hello World" existente. Substitua-o por uma nova matriz de alunos:
static void Main(string[] args) { // Create an array with a list of students Student[] students = { new Student(1, "John", "Smith", "03/04/1990"), new Student(2, "Adam", "Van Houten", "07/07/1991"), new Student(3, "Joey", "Richardson", "01/02/1992"), new Student(4, "Matt", "Adams", "05/05/1992"), new Student(5, "Jake", "Smith", "04/04/1994"), }; }
Como criar um novo arquivo CSV e adicionar títulos
Use o caminho do arquivo para criar o novo arquivo CSV e adicione os títulos ao arquivo.
Dentro da função Main(), abaixo da lista de alunos, crie um novo arquivo CSV. Use um caminho de arquivo para determinar onde deseja armazenar o arquivo. Se o arquivo não existir, o programa criará automaticamente um novo arquivo CSV naquele local.
String file = @"C:\Users\Sharl\Desktop\Output.csv";
Use o StringBuilder para criar uma nova string formatada. Use a variável separadora para armazenar a vírgula que separará cada valor de cada coluna.
String separator = ","; StringBuilder output = new StringBuilder();
Crie os títulos para a linha superior do arquivo CSV. Adicione os cabeçalhos do StudentID do aluno, nome, sobrenome e data de nascimento.
String[] headings = { "StudentID", "First Name", "Last Name", "Date Of Birth" }; output.AppendLine(string.Join(separator, headings));
Como armazenar valores no arquivo CSV
Para cada aluno na matriz Students, crie uma nova linha para armazenar seus detalhes dentro do arquivo CSV.
Adicione um loop for para cada aluno. Cada aluno mostrará seus dados (incluindo carteira de estudante, nome, sobrenome e data de nascimento) em uma linha diferente do arquivo CSV.
foreach (Student student in students) { }
Dentro do loop for, crie uma lista dos atributos do aluno. Use o StringBuilder para formatar a string e adicionar uma vírgula entre cada valor.
String[] newLine = { student.StudentId.ToString(), student.FirstName, student.LastName, student.Dob }; output.AppendLine(string.Join(separator, newLine));
Alternativamente, você pode formatar a linha usando string.Format, em vez do StringBuilder.
string newLine = string.Format("{0}, {1}, {2}, {3}", student.StudentId.ToString(), student.FirstName, student.LastName, student.Dob); output.AppendLine(string.Join(separator, newLine));
Após o loop for, grave todos os dados no arquivo. Adicione um bloco try-catch para detectar possíveis problemas que possam acontecer ao gravar os dados no arquivo. Isso garantirá que o programa não trave se não conseguir salvar o arquivo com êxito.
try { File.AppendAllText(file, output.ToString()); } catch(Exception ex) { Console.WriteLine("Data could not be written to the CSV file."); return; }
Informe ao usuário que o programa conseguiu criar o arquivo com êxito.
Console.WriteLine("The data has been successfully saved to the CSV file");
Como visualizar os dados no arquivo
Execute o programa e navegue até o local do arquivo CSV criado para abri-lo.
Clique no botão verde de reprodução na parte superior da janela do Visual Studio.
Aguarde até que o aplicativo de console seja compilado e exiba a mensagem de sucesso.
Navegue até o local onde você armazenou seu arquivo e abra o arquivo Output.csv recém-criado. Abra o arquivo usando o Microsoft Excel para visualizar os dados como linhas e colunas.
Abra o arquivo CSV usando qualquer editor de texto, como o Notepad++, para visualizar os dados formatados separados por vírgulas.
Armazenando dados em arquivos CSV usando C#
Você pode salvar dados em seu aplicativo C# gravando-os em um arquivo CSV. Dependendo dos dados, você pode adicionar cada objeto ou conjunto de dados como uma linha separada. Use vírgulas para separar cada ponto de dados ou valor em colunas.
Você pode visualizar um CSV bruto em um editor de texto para ver seus pontos de dados formatados. Você também pode visualizar seu arquivo CSV para ver linhas e colunas visualmente usando o Microsoft Excel.
Existem muitas outras maneiras de gravar dados em arquivos CSV. Você também pode explorar como gravar dados em arquivos CSV usando Node.js.