O que é o formato de ficheiro CSV?
.csv é um formato de arquivo que armazena vários tipos de dados em conjuntos de texto separados por caracteres, mais comumente com uma vírgula - daí o nome Comma-Separated Values (Valores Separados por Vírgula). O formato é documentado na RFC 4180 (2005), um padrão mínimo, mas amplamente adotado. Os registros de dados são separados por um caractere de nova linha, enquanto os valores de campos individuais são comumente delimitados por aspas duplas. Para incluir uma aspa dupla literal dentro de um campo, ela é escrita duas vezes como "".
A primeira linha de um arquivo .csv convencionalmente contém os nomes das colunas (uma linha de cabeçalho), embora a especificação CSV não exija sua estrutura. Os campos de registro podem ser separados por:
- Vírgulas,
- Pontos e vírgulas,
- Tabs (veja .TSV),
- Outros caracteres - usados de forma consistente em todo o documento.
Arquivos .csv são usados para armazenar, importar e exportar dados em um formato bem definido e independente de plataforma que qualquer editor de texto pode abrir. Como a escolha do separador é irrestrita, às vezes pode causar problemas durante a conversão; portanto, os assistentes de importação de dados devem oferecer uma opção para configurar o separador a ser usado, como é o caso de aplicativos de planilha como Microsoft Excel e LibreOffice Calc.
O .csv não carrega assinatura de arquivo (magic bytes) e é identificado por sua estrutura em vez de seu conteúdo. Um arquivo pode opcionalmente começar com uma marca de ordem de byte UTF-8 (EF BB BF), que o Excel grava automaticamente para sinalizar a codificação. A maioria das linguagens de programação fornece bibliotecas dedicadas para importar e gerenciar arquivos .csv de forma confiável, tornando-o um dos formatos de intercâmbio de dados mais universais em uso hoje.
Segurança e proteção
RISCO: MEDIUMO CSV é texto simples e não pode executar código por si só, mas carrega um risco real: injeção de CSV (injeção de fórmula). Se uma célula começar com =, +, - ou @, uma planilha pode executá-la como uma fórmula ao abrir - invasores exploram isso em CSVs exportados para executar comandos ou vazar dados. O Excel/LibreOffice modernos avisam antes de executar tais fórmulas; não as ative em arquivos de fontes não confiáveis. O «risco» cotidiano é a corrupção de dados, não malware: codificação ou delimitador errado distorcendo silenciosamente números, datas e zeros à esquerda (ex: CEPs e números de telefone perdendo o 0 inicial).
Detalhes do formato
em resumoProgramas que abrem arquivos CSV
Detalhes técnicos
especificação profunda| Tipo MIME | text/csv |
| Estrutura do arquivo | Texto simples; linhas delimitadas por quebras de linha, campos delimitados por um caractere separador escolhido |
| Delimitador padrão | Vírgula (`,`); pontos e vírgulas e tabs também são variantes amplamente utilizadas |
| Quebra de linha (RFC 4180) | CRLF (`\r\n` por especificação); apenas LF (`\n`) é amplamente aceito na prática |
| Caractere de citação de campo | Aspas duplas (`"`); duplicadas (`""`) para escapar uma aspa literal dentro de um campo |
| Linha de cabeçalho | Primeira linha opcional que convencionalmente lista os nomes das colunas; a RFC 4180 deixa a estrutura do cabeçalho indefinida |
| Assinatura do arquivo (magic bytes) | Nenhuma; identificado pela estrutura. Um BOM UTF-8 opcional (`EF BB BF`) pode aparecer no início do arquivo |
| Suporte a campos de várias linhas | Suportado quando o conteúdo do campo está entre aspas duplas |
| Modelo de dados | Apenas tabela plana única; sem aninhamento, relações ou tipos de dados de coluna codificados no formato |
| Codificação de caracteres | Qualquer codificação acordada entre gravador e leitor; UTF-8 e Windows-1252 são as mais comuns |
| Compressão embutida | Nenhuma; arquivos são comumente arquivados como `.gz` ou [ZIP](/format/zip) |
| Adequação para streaming | Alta - as linhas podem ser processadas linha por linha sem carregar o arquivo inteiro na memória |
| Suporte a dados binários | Não suportado nativamente; o conteúdo binário deve ser codificado em Base64 como texto |
| Limites de linha do aplicativo | Sem limite no nível do formato; o Microsoft Excel limita a importação de planilhas em 1.048.576 linhas |
| Lançado | 1970s (early use); RFC 4180 published 2005 |
| Padrão aberto | Sim · livre de royalties |
| Especificação | www.rfc-editor.org |
Conversões de CSV
Perguntas e Respostas da Comunidade
perguntado por usuáriosAinda não há perguntas - seja o primeiro a perguntar sobre arquivos CSV.