Início CSV para JSON

CSV para JSON

Cole um CSV ou abra um arquivo. A primeira linha vira as chaves. Números e true/false ganham tipo, e colunas com ponto mais linhas repetidas dobram em objetos e arrays.

JSON

Por que existe

Uma planilha exportada é difícil de colar em código por causa de vírgulas e aspas. Uma vírgula ou quebra dentro de um campo precisa continuar sendo um só valor.

Colunas escritas como customer.name e linhas que repetem um pedido dobram em objetos e arrays que uma API pode receber.

  1. 01Como usar

    Cole um CSV ou escolha um arquivo. O separador é o que mais aparece na primeira linha entre vírgula, tabulação, ponto e vírgula ou barra.

    Se a codificação mudar, escolha UTF-8, UTF-16, Windows-1252, Shift-JIS, GBK, Big5 ou EUC-KR. Auto lê um BOM e, sem ele, usa UTF-8.

  2. 02Como fica

    O exemplo tem dois pedidos. O teclado e o mouse de Alice se juntam nos items de um pedido, e as tags viram um array.

    O resultado é JSON com recuo de dois espaços. Copie ou baixe como result.json.

    DigitadoDois pedidos

    Linhas 2 pedidos
    Aninhado customer, tags, items
    Saída JSON
  3. 03Vale saber

    Uma quebra ou vírgula dentro de um campo continua um valor se o campo estiver entre aspas. Uma aspa sem fechar indica a linha.

    Uma planilha muito grande pode deixar o navegador lento, então a leitura para em 5MB. Um arquivo com senhas ou dados pessoais também fica neste aparelho.

Perguntas

QO arquivo é enviado?
ANão. O texto colado e o arquivo escolhido viram JSON só neste navegador.
QPor que um número continua texto?
AUm valor como 007, ou fora do inteiro seguro, continua string. Só true e false viram booleanos.
QO que são pontos e linhas repetidas?
Acustomer.name vira name dentro de um objeto customer. Linhas que compartilham as células anteriores se juntam num array como items.
QQuais arquivos posso abrir?
ACSV e TSV. Auto segue um BOM e, sem ele, lê UTF-8. Codificações japonesa, chinesa, europeia ocidental e coreana também podem ser escolhidas.

Como esta página calcula

A primeira linha da tabela é lida como cabeçalhos. Um nome com pontos, como parent.child, vira um objeto aninhado, e as linhas que repetem o mesmo pai se juntam num array.

As palavras true e false viram booleanos, e os números comuns viram números. Um valor com zero à esquerda continua texto, e um inteiro maior que 2^53-1 continua texto, para esses dígitos não serem encurtados.

Dá para ler UTF-8, UTF-16, EUC-KR, Windows-1252, Shift-JIS, GBK, Big5, ISO-8859-1, ou deixar a página escolher a codificação pelo BOM. Uma aspa sem fechar é um erro. O download se chama result.json.

O arquivo da tabela é lido só neste navegador. O JSON é montado nesta página antes do download, e os bytes do arquivo não são enviados para conversão.

  • # csv
  • # json
  • # planilha
  • # conversor