Entendendo os fundamentos da importação de dados

Importando dados em Java

Anthony Markham

VP Quant Developer

Conheça seu instrutor!

 

$$

Anthony Markham

  • VP, Desenvolvedor Quantitativo/Líder de Análise
  • Desenvolvedor C++/Java/Python em banco de investimento
  • Experiência em ensino universitário

 

Anthony Markham

Importando dados em Java

Fundamentos da importação de dados

  • Essencial para processar informações externas em aplicações Java

  • Formatos comuns incluem CSV (valores separados por vírgula), JSON e Excel

Diagrama de fluxo mostrando as cinco etapas no fluxo de importação

  • Java oferece ferramentas robustas nos pacotes java.io e java.nio
Importando dados em Java

Noções básicas de manipulação de arquivos

  • A classe File representa arquivos ou diretórios
  • Métodos como exists(), length(), e isDirectory() permitem validar nosso arquivo
import java.io.File;
File dataFile = new File("data.csv");
boolean exists = dataFile.exists();
long size = dataFile.length();
boolean isDirectory = dataFile.isDirectory();
Importando dados em Java

Interface Path e classe Files

  • Interface Path e classe Files oferecem operações modernas de arquivo (java.nio)
  • Benefícios: Mais flexibilidade, melhor tratamento de exceções e desempenho
  • java.io para operações simples; java.nio para operações de entrada/saída de alto desempenho
import java.nio.file.Path;
import java.nio.file.Paths;
import java.nio.file.Files;
Path dataPath = Paths.get("data.csv");

boolean exists = Files.exists(dataPath); long size = Files.size(dataPath);
Importando dados em Java

Lendo arquivos de texto

  • Files.readAllLines(): Lê o arquivo inteiro em List<String> (um elemento por linha)
  • Files.readString(): Lê o arquivo inteiro em uma única string
Path file = Paths.get("data.csv");

// Ler todas as linhas de uma vez List<String> lines = Files.readAllLines(file); // Ler o arquivo inteiro como uma string String content = Files.readString(file);

$$

$$

  • O arquivo inteiro é carregado na memória 🛑
Importando dados em Java

Validação de dados

  • Garante a qualidade dos dados antes do processamento
  • Verifique a qualidade e estrutura dos dados
  • Realize validações comuns
  • Trate qualquer Exception

Verificações de validação de dados

Importando dados em Java

Validação de dados

  • Verificações comuns: verificar se o arquivo não está vazio, confirmar colunas necessárias no cabeçalho
  • Trate Exception com um bloco try-catch ✅
try {
  Path file = Paths.get("data.csv");
  List<String> lines = Files.readAllLines(file);
  if (lines.isEmpty()) { // Validar se o arquivo tem conteúdo
      System.out.println("Aviso: Arquivo está vazio");}
  String header = lines.get(0);
  if (!header.contains("id") || !header.contains("name")) {    // Verificar cabeçalho
      System.out.println("Erro: Arquivo sem colunas necessárias");
} catch (Exception e) {
    System.out.println("Erro ao ler arquivo: " + e.getMessage());}
Importando dados em Java

Resumo

Classe/Interface Método Descrição
File new File() Cria uma representação abstrata de um caminho de arquivo
File exists() Verifica se um arquivo existe
File length() Obtém o tamanho do arquivo em bytes
Paths get() Cria um objeto Path a partir de uma string
Files exists() Verifica se um arquivo existe (API moderna)
Files size() Obtém o tamanho do arquivo em bytes (API moderna)
Files readAllLines() Lê o arquivo inteiro em List<String>
Files readString() Lê o arquivo inteiro em uma única String
1 https://docs.oracle.com/javase/8/docs/api/java/nio/file/Files.html
Importando dados em Java

Vamos praticar!

Importando dados em Java

Preparing Video For Download...