CSVImporter: trabalhando com CSV em Swift

Treinador Online de Python para Iniciantes

Aprenda Python facilmente sem sobrecarga teórica. Resolva tarefas práticas com verificação automática e escreva código diretamente no navegador.

Start Course

O que é CSVImporter e para que serve?

CSVImporter é uma biblioteca leve para Swift (iOS/macOS) que simplifica a importação, análise e exportação de arquivos CSV. Ao contrário do Foundation padrão, o CSVImporter fornece ferramentas prontas para processar grandes dados tabulares, detecção automática de delimitadores e trabalho com codificações. A biblioteca é ideal para aplicativos que exigem carregamento de dados de fontes externas: relatórios contábeis, listas de contatos, conjuntos de dados para machine learning ou arquivos de configuração.

Instalação

O CSVImporter é instalado via Swift Package Manager. Adicione a dependência em Package.swift:

.package(url: "https://github.com/Flinesoft/CSVImporter.git", from: "1.9.0")

Ou via Xcode: File → Add Packages → cole a URL do repositório.

Funções principais

  • Detecção automática de delimitador — suporta vírgulas, ponto e vírgula, tabulações.
  • Análise em streaming — processa arquivos de qualquer tamanho sem carregá-los completamente na memória.
  • Suporte a codificações — UTF-8, Windows-1251, ISO Latin-1.
  • Tipagem flexível — conversão de strings para Int, Double, Date e estruturas personalizadas.
  • Exportação — criação de CSV a partir de arrays de dicionários.

Exemplo de código em Swift

import CSVImporter

// Importação de arquivolet path = Bundle.main.path(forResource: "data", ofType: "csv")!let importer = CSVImporter<[String]>(path: path)let records = importer.importRecords { $0 } // [["Name", "Age"], ["Alice", "30"], ...]

// Análise com cabeçalhoslet structured = importer.importRecords { record in return Person(name: record[0], age: Int(record[1]) ?? 0)}

// Exportaçãolet data = [["Name", "Age"], ["Bob", "25"]]let csvString = data.csvString() // "Name,AgeBob,25"try? csvString.write(to: URL(fileURLWithPath: "/tmp/output.csv"), atomically: true, encoding: .utf8)

Quando usar CSVImporter?

  • Ao trabalhar com dados tabulares do Excel/Google Sheets.
  • Em aplicativos para análise financeira, controle de estoque ou manutenção de estatísticas.
  • Ao migrar dados entre serviços (por exemplo, importação de contatos de CSV).
  • Em utilitários macOS para processamento de logs ou configurações.

A biblioteca é estável, possui 100% de cobertura de testes e é mantida pela comunidade desde 2016. Adequada para iOS 13+, macOS 10.15+.

Recommendations