BlogJavaTutorias

Como ler e escrever csv com Java

Neste tutorial  vou mostrar como  ler e escrever csv com o Java.


 

Como ler e escrever csv com Java
Como ler e escrever csv com Java

 

Neste breve tutorial vou demonstrar como ler e escrever um arquivo csv com Java.

Neste post irei demonstrar como podemos é feito a leitura e escrita de dados em um arquivo csv usando apenas funções nativas do Java.

Para iniciar vamos importar as dependências que serão utilizadas:

 

import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;

 

Feito isto, vamos implementar começar a implementar o código responsável escrita dos dados no arquivo csv.

Segue abaixo como ficou o código:

import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
public class CSVWriterExample {
    public static void main(String[] args) {
        String csvFile = "output.csv";
        try (PrintWriterwriter=
        new PrintWriter(new FileWriter(csvFile))) {
            writer.println("Nome,Idade,Cidade");
           
            writer.println("João,25,São Paulo");
            writer.println("Maria,30,Rio de Janeiro");
            writer.println("Pedro,28,Belo Horizonte");
            System.out.println("Arquivo CSV criado com sucesso!");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

 

Uma breve explicação do código acima:

  • No código acima é definido primeiro o nome do aquivo que será gerado;
  • Depois instancio  a classe PrintWriter passando uma instância do FileWriter, para criar o arquivo onde será escrito os dados;
  • Logo após é realizado a escrita das informações com a função (println) da classe (PrintWriter).

 

Ao rodar o código acima será gerado um arquivo csv (output.csv) com as informações passadas:

Nome,Idade,Cidade
João,25,São Paulo
Maria,30,Rio de Janeiro
Pedro,23,Minas Gerais

Segue abaixo um pequeno vídeo onde demonstro o processo e implementação do código usado no tutorial :

 

 

Agora vem a parte da leitura do arquivo que foi gerado, segue abaixo o código implementado para leitura do arquivo:

 

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class CSVReaderExample {
    public static void main(String[] args) {
        String csvFile = "output.csv";
        String line;
        String csvSeparator = ",";
        try (BufferedReader reader = new BufferedReader(new FileReader(csvFile))) {
            if ((line = reader.readLine()) != null) {
                System.out.println("Cabeçalho: " + line);
            }
            while ((line = reader.readLine()) != null) {
                String[] data = line.split(csvSeparator);
                String nome = data[0];
                String idade = data[1];
                String cidade = data[2];
                System.out.println("Nome: " + nome + ", Idade: " + idade + ", Cidade: " + cidade);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

Uma breve explicação do código acima:

  • No código acima é definido primeiro o nome do aquivo que será lido;
  • Depois instancio  a classe BufferedReader passando uma instância do FileReader, para ler arquivo csv;
  • Logo após é realizo a leitura do arquivo percorrendo cada linha e exibindo as informações no terminal;

 

Quando executamos  o código acima será exibido no terminal as  informações abaixos:

 

Cabeçalho: Nome,Idade,Cidade
Nome: João, Idade: 25, Cidade: São Paulo
Nome: Maria, Idade: 30, Cidade: Rio de Janeiro
Nome: Pedro, Idade: 23, Cidade: Minas Gerais

 

Deixo aqui um pequeno curto vídeo da implementação do código de leitura de arquivo csv:

 

 

Caso queira acompanhar todo o processo de desenvolvimento deixo abaixo o link para o vídeo no Youtube:

 

 

Abaixo segue link do Github com o código fonte que utilizei  para implementação deste tutorial:

 

Código Fonte CSVWriter

Código Fonte CSVReader

 

 

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *