Transforme uma tabela de planilha em uma matriz de objetos JSON codificados pela linha do cabeçalho
A ferramenta é carregada aqui. Precisa de JavaScript, pois o trabalho acontece no seu dispositivo.
Seus arquivos e sua privacidade
A tabela é convertida dentro desta aba do navegador e o JSON é produzido por você mesmo
dispositivo. Não há ponto de extremidade de upload. O código da ferramenta não faz nenhuma solicitação para transportar o arquivo,
texto colado ou saída gerada. As solicitações de script de análise divulgadas são separadas e são
descrito na Política de Privacidade do site.
O que esta ferramenta faz
Converta uma tabela CSV em JSON: um objeto por linha de dados, codificado pelos nomes dos cabeçalhos, escritos
como uma matriz de nível superior. Nomes de cabeçalho em branco tornam-se chaves posicionais e nomes repetidos são
sufixados em vez de sobrescrever uns aos outros. A conversão também ocorre no sentido inverso.
A conversão transforma cada linha de dados em um objeto JSON, usando a linha de cabeçalho para as chaves,
e escreve a tabela como uma matriz de nível superior recuada com dois espaços. Uma célula de cabeçalho em branco
torna-se uma chave posicional como coluna_3, e um nome que aparece duas vezes assume um valor numérico
sufixo para que a segunda coluna mantenha seus dados em vez de substituir a primeira. Cada valor
é escrito como uma string, porque um arquivo CSV não carrega nenhuma informação de tipo para conversão.
Como usar
Selecione Escolher um arquivo CSV ou JSON e carregue sua tabela ou cole as linhas diretamente.
Verifique se a primeira linha é realmente o cabeçalho: seus nomes se tornam as chaves exatamente como
escrito, incluindo espaços e maiúsculas.
Lide primeiro com qualquer aviso de linha irregular, porque as células além da última coluna do cabeçalho têm
nenhuma chave e não alcance o JSON.
Selecione Baixar JSON ou Copiar JSON para colá-lo em outro lugar. O download CSV também está lá, para
quando você só queria a mesa arrumada.
Exemplos de casos de uso
Carregando uma planilha de acessórios de teste em um script que espera uma série de objetos.
Transformar um produto exportado ou lista de preços em um arquivo JSON para construção de site estático.
Achatar uma resposta JSON API salva em uma tabela que você pode abrir em uma planilha.
Entrada e saída suportadas
Aceita
CSV, TSV ou texto simples com uma linha de cabeçalho, até 50 MB
JSON contendo uma matriz de objetos de nível superior, para a direção reversa
Produz
JSON, uma matriz de objetos de nível superior com valores de string, recuados com dois espaços
CSV, UTF-8 com terminações CRLF, ao converter JSON em uma tabela
O que esta ferramenta não fará
Cada valor é escrito como uma string. O número 42 se torna o texto 42 e verdadeiro se torna
o texto é verdadeiro; não há inferência de tipo e nenhuma opção para isso.
Uma célula vazia se torna uma string vazia, nunca nula, então o código que fornece um padrão quando
um valor é nulo não o fornecerá aqui.
As células além da largura do cabeçalho não possuem chave e são descartadas. Eles são relatados como esfarrapados
linhas no carregamento, e esse é o aviso para agir.
A primeira linha é sempre o cabeçalho, portanto, um arquivo sem cabeçalho doa seu primeiro registro para o
nomes-chave.
A saída é uma matriz plana de objetos planos: um cabeçalho como user.name permanece literal
chave com um ponto e nomes repetidos recebem _2 e _3.
Erros comuns
Alimentando a saída para o código que espera números. Adicionar uma sequência de dígitos concatena
ou produz NaN em vez de gerar um erro, então o bug surge longe do
conversão.
Esperando que a opção segura para injeção de fórmula seja aplicada aqui. Pertence ao escritor CSV,
portanto, um valor que começa com um sinal de igual atinge JSON inalterado e é uma fórmula
novamente se JSON for escrito novamente como CSV.
Convertendo um arquivo que reportava linhas irregulares e assumindo que todas as células chegaram: o valor extra
as células são exibidas na visualização, mas nunca alcançam JSON.
Supondo que uma coluna de cabeçalho duplicada substitua a primeira. Ele é renomeado, então os dados
senta-se debaixo de uma chave que ninguém está lendo.
Notas técnicas
A análise CSV é executada em um Web Worker usando uma máquina de estado RFC 4180 escrita à mão, assim citada
delimitadores e novas linhas dentro dos campos entre aspas são resolvidos antes do início da conversão. Chaves
são calculados uma vez a partir do cabeçalho e cada linha é mapeada por posição, portanto, uma célula ausente
torna-se uma string vazia em vez de uma chave ausente e cada objeto carrega a mesma chave
definido. A direção inversa constrói as colunas a partir da união de chaves em todos os objetos em
ordem vista pela primeira vez.
Perguntas frequentes
Os números são convertidos em números JSON?
Não. Todo valor é escrito como uma string, porque um arquivo CSV não possui informações de tipo e
adivinhar é como os conversores transformam um código de produto como 0012 no número 12. Lance o
valores em tudo o que lê JSON.
O que acontece com uma coluna sem nome de cabeçalho?
Ele obtém uma chave com base no número da coluna, então uma terceira coluna com um cabeçalho em branco torna-se
coluna_3. Os dados são mantidos e apenas o nome é inventado, então primeiro renomeie a coluna se
você quer uma chave real.
Posso converter JSON de volta para CSV?
Sim. Carregue um arquivo .json contendo uma matriz de objetos de nível superior e ele se tornará uma tabela.
As colunas são a união de chaves em cada objeto na ordem vista pela primeira vez e um conjunto aninhado
o valor é escrito na célula como texto JSON.