YAML para CSV
Este conversor transforma uma sequência de mapeamentos YAML em CSV RFC 4180 no seu navegador. Valores aninhados são transformados em caminhos de coluna, os campos são entreaspas apenas quando necessário e as linhas terminam em CRLF — exatamente o arquivo que uma planilha espera. Nada é enviado.
YAML para CSV: explicação
O YAML adora aninhamento; planilhas adoram linhas planas. Entre os dois está uma questão mecânica: como as chaves de um mapeamento aninhado se tornam os cabeçalhos de uma tabela? Este conversor responde da mesma forma que o resto do ecossistema — com caminhos de coluna. Um registro cujo objeto address contém um campo city produz uma coluna address.city, assim nenhuma informação é perdida e nenhuma chave colide.
O lado do CSV é estritamente RFC 4180: delimitador por vírgula, escape com aspas duplas quando um campo contém vírgula, aspa ou nova linha, e terminação de linha em CRLF. Campos são entreaspas apenas quando precisam ser, porque cada aspa desnecessária é mais uma coisa com que um script downstream precisa ser robusto. O resultado abre diretamente no Excel, Numbers, LibreOffice e Google Sheets.
Tudo é executado nesta aba do navegador. O texto YAML que você cola é interpretado por um motor na página, o CSV é construído a partir dos registros interpretados e nenhum deles toca a rede — abra o DevTools, veja o painel de Rede permanecer silencioso e a afirmação se valida por si só.
No sentido inverso — transformar uma exportação de planilha de volta em configuração — é o mesmo motor em reverso, e a converter CSV de volta para YAML página lida com isso usando a convenção de caminho de coluna lida de trás para frente.
Se seus dados de origem são JSON em vez de YAML, o conversor de JSON para CSV dedicado cobre isso com as mesmas regras de planificação.
Como a conversão realmente funciona
O motor interpreta seu YAML em registros primeiro, porque arquivos YAML que se tabulam bem são sequências de mapeamentos — uma lista de nível superior cujo item tem chaves. Os valores aninhados de cada registro são transformados em caminhos de coluna separados por ponto, a união desses caminhos em todos os registros se torna a linha de cabeçalho e cada registro preenche as colunas que possui, deixando em branco onde não tem.
- Interpretação: o texto YAML é lido como uma sequência de mapeamentos. Um arquivo cujo nível superior é um único mapeamento gera um erro claro pedindo uma lista.
- Planificação: mapeamentos e arrays aninhados se transformam em caminhos de coluna — address.city, tags.0, tags.1.
- União: a linha de cabeçalho é a união ordenada de todos os caminhos dos registros, o primeiro visto primeiro, para que as colunas leem em uma ordem estável e previsível.
- Emissão: cada registro é escrito como uma linha terminada em CRLF, campos entreaspas por RFC 4180 apenas quando o conteúdo obriga.
Como a saída se parece
O exemplo abaixo é o par exato que o botão “Carregar exemplo” do conversor produz: dois registros de pessoas, um com um endereço aninhado e uma matriz de tags. Veja o que acontece com cada formato — o objeto address cresce em duas colunas, a matriz tags enumera por índice e a vírgula dentro de um campo note aciona a aspa exatamente nesse único campo.
Casos de borda que este conversor recusa em vez de distorcer
Um conversor honesto tem limites, e a pior coisa que ele pode fazer é fingir que não tem. Três entradas são rejeitadas com uma mensagem específica em vez de serem silenciosamente reformuladas, porque cada uma significa que a saída mentiria para você:
- Um mapeamento de nível superior em vez de uma sequência — um único objeto de configuração não é uma tabela, e inventar uma tabela de uma linha esconderia o erro.
- Itens de sequência que são escalares ou arrays — uma lista de strings não pode ser tabulada em colunas nomeadas.
- Chaves homogêneas que diferem drasticamente entre registros — a união ainda converte, mas a visualização mostra o resultado irregular para que você possa decidir antes de salvar.
Perguntas frequentes
Converter YAML para CSV envia meu arquivo para algum lugar?
Não. A interpretação e a geração de CSV são executadas dentro desta aba do navegador com JavaScript que foi carregado uma vez quando a página abriu. A página não tem rota de API para enviar dados, e o Content-Security-Policy proíbe a página de se conectar em outro lugar. Você pode verificar ambas as afirmações no DevTools: o painel de Rede não mostra nenhuma requisição quando você converte.
Valores aninhados de YAML são tratados como na saída CSV?
Mapeamentos aninhados são transformados em caminhos de coluna separados por ponto — um objeto address com um campo city se torna uma coluna address.city. Arrays são transformados em caminhos indexados como tags.0 e tags.1. Nenhum dado é descartado: cada valor folha no YAML termina em exatamente uma célula.
Qual sintaxe YAML o interpretador aceita?
O núcleo do dia a dia: sequências e mapeamentos, escalares simples e entreaspas, comentários, booleanos, inteiros, floats, null e escalares de bloco. Diretivas, âncoras e aliases e chaves de mesclagem estão fora do conjunto suportado do conversor e são rejeitadas com um erro nomeado em vez de serem adivinhadas — o site documenta exatamente este subconjunto para que uma falha nunca seja uma surpresa.
Por que minhas linhas terminam com CRLF, e eu posso alterar isso?
A RFC 4180 especifica CRLF (\r\n) como terminador de linha, e é isso que o conversor emite por padrão porque é o que o software de planilha mais compatível espera. Ferramentas que querem LF puro geralmente aceitam CRLF de qualquer maneira; se seu pipeline é rigoroso quanto a isso, converta primeiro e passe a saída por uma etapa de normalização de nova linha depois.
Há um limite de tamanho de arquivo ou de linhas?
O limite é a memória da aba do navegador, não um limite de upload. O motor interpreta na thread principal e recusa documentos acima de 8 MB com uma mensagem clara em vez de travar a página — o mesmo limite documentado que cada outra ferramenta de thread principal neste site aplica. Para exportações de configuração típicas, isso é dezenas de milhares de linhas.
Como abro o CSV no Excel com a codificação correta?
O download é UTF-8 sem marca de ordem de byte (BOM). O Excel moderno lida com isso corretamente via Dados → De Texto/CSV; versões mais antigas às vezes assumem uma página de código herdada e distorcem caracteres não ASCII. Se você vê mojibake, use a caixa de diálogo de importação do Excel, escolha UTF-8 como origem e os dados são carregados corretamente.
Quais ferramentas relacionadas devo usar a seguir?
- CSV para YAMLConversor que roda no seu navegadorAbrir
- Converter JSON em CSVTransforma registros em planilha, mesmo aninhadosAbrir
- Formatar JSONIndenta, ordena chaves e remove comentáriosAbrir
- TOML para JSONConversor que roda no seu navegadorAbrir
- Validar JSONAponta o erro com linha e coluna e corrige num cliqueAbrir
- Converter CSV em JSONLê a exportação da planilha, aspas e tudoAbrir