Um separador faz parte de um formato
CSV costuma separar campos com vírgulas, enquanto TSV usa tabulações. A diferença se torna importante quando o próprio campo contém vírgula, tabulação, aspas ou quebra de linha. A RFC 4180 descreve um formato comum de CSV em que um campo com vírgula pode ser delimitado por aspas duplas; uma aspa dentro desse campo é representada por duas aspas. Não existe um único comportamento de TSV adotado por todos os programas, então verifique o que o sistema de destino espera. Os conversores do MultiVerto interpretam a tabela como células e escrevem o delimitador solicitado, em vez de substituir sinais de pontuação diretamente no texto bruto. Todas as linhas precisam ter o mesmo número de células.
Siga um campo citado
Experimente o CSV de duas linhas cujo cabeçalho é item,note e cuja linha de dados é caneta,"vermelho, azul". A vírgula dentro do campo entre aspas faz parte dos dados; ela não cria uma terceira coluna. Depois da conversão de CSV para TSV, uma tabulação separa item de note e caneta de vermelho, azul. A vírgula dentro do segundo campo continua sendo texto comum. O conversor pode retirar as aspas desse campo, pois a vírgula não é um delimitador no TSV. Se o campo contivesse uma tabulação ou uma quebra de linha, a saída ainda precisaria representá-lo adequadamente entre aspas. Abra o resultado em um editor que mostre tabulações antes de avaliá-lo: na tela, tabulações e espaços podem parecer iguais. O exemplo incorporado usa os mesmos dados para demonstrar essa regra.
- CSV: caneta, "vermelho, azul"
- analisar como duas células: caneta | vermelho, azul
- TSV: caneta [tab] vermelho, azul
Escolha o aplicativo de recepção primeiro
Use CSV quando o sistema de destino pedir explicitamente campos separados por vírgulas e uma convenção documentada para aspas. TSV pode ser conveniente quando os dados contêm muitas vírgulas, mas as tabulações presentes dentro de um campo também exigem cuidado. Se o destino aceitar registros estruturados, o conversor de CSV para JSON pode ajudar a inspecionar os nomes dos campos. JSON só preservará os tipos pretendidos se o processo definir como interpretar cada célula; uma importação tabular frequentemente lê tudo como texto. Além disso, uma planilha pode alterar zeros à esquerda, identificadores longos ou valores que se parecem com datas. A simples troca do delimitador não impede essas mudanças. Confira as opções de importação e compare uma amostra com os dados originais.
Manter fórmulas e células não confiáveis em mente
CSV e TSV são dados, mas um programa de planilhas pode interpretar como fórmula uma célula que começa com determinados caracteres. Por isso, exportar valores recebidos de terceiros exige cuidados próprios de segurança. Este conversor altera o delimitador e o uso de aspas; ele não neutraliza fórmulas nem torna seguro abrir qualquer arquivo baixado. Se outras pessoas puderam fornecer os valores, aplique as proteções de importação do programa de destino e a política de exportação do seu aplicativo. Trocar vírgulas por tabulações não remove um caractere inicial perigoso. Com dados sensíveis, confirme qual programa abrirá o arquivo e se ele preservará cada campo como texto literal.
Verificar viagens de ida e volta e tipos de dados
Guarde o arquivo original. Converta uma amostra representativa de CSV para TSV e depois faça a conversão inversa. Compare as células interpretadas, não necessariamente os bytes exatos: a posição das aspas e as terminações de linha podem mudar sem alterar os dados. Confira cabeçalhos, número de linhas, células vazias, separadores e quebras de linha dentro dos campos. Se houver uma etapa posterior de conversão para JSON, verifique se a primeira linha virou nomes de propriedades e se códigos numéricos continuaram como texto quando necessário. O zero inicial de um código de conta é dado, não um algarismo a descartar. Teste primeiro o exemplo incorporado e, em seguida, repita no aplicativo de destino com as linhas mais problemáticas.