Tablora · Biblioteca
Tratar a marca de ordem de bytes da primeira célula
Uma marca de ordem de bytes UTF-8 pode vir antes do primeiro cabeçalho. O inspetor remove uma marca inicial, então a primeira célula mostra id sem nada escondido.
O caractere invisível antes do cabeçalho
Muitos programas, incluindo a opção CSV UTF-8 do Excel, começam um arquivo de texto com uma marca de ordem de bytes (BOM): o caractere U+FEFF, que diz a quem lê que o arquivo está em UTF-8. Ela é invisível na maioria dos editores, mas continua sendo um caractere. Quando uma ferramenta não a remove, o primeiro cabeçalho vira a marca seguida de id, e qualquer busca ou junção por uma coluna chamada id falha sem um motivo aparente.
O inspetor remove uma marca de ordem de bytes bem no início do texto colado, antes de ler qualquer célula. O primeiro cabeçalho fica então exatamente id.
Exemplo: o cabeçalho id,name
O exemplo da página é um cabeçalho id,name que começa com uma marca de ordem de bytes, seguido do registro 1,Mira, com a vírgula como “Delimitador”. O inspetor informa 2 linhas e 2 colunas, e a linha 1, coluna 1, mostra id, sem prefixo escondido.
Nada mais no texto é alterado: as outras células mantêm todos os caracteres que tinham.
Sem essa etapa, o primeiro cabeçalho pareceria idêntico na tela, mas seria diferente na comparação, que é exatamente o tipo de divergência difícil de ver.
Conferindo um arquivo que pode ter a marca
- Cole o arquivo inteiro, a partir do primeiro caractere, em “Texto da tabela”.
- Clique em “Calcular” e olhe o primeiro cabeçalho na pré-visualização.
- Se você comparar cabeçalhos com outro arquivo, compare-os depois que os dois tiverem passado pelo inspetor.
- Não trate a remoção como uma limpeza geral de espaços. Só uma marca bem no início é removida.
- Se você juntar vários arquivos em um único texto, a marca que estava no início do segundo ou do terceiro arquivo agora fica no meio do texto e permanece na célula em que caiu.
Marcas no meio do texto e nas exportações
Uma marca no meio do texto continua fazendo parte daquela célula. A remoção de cabeçalhos repetidos apara espaços e caracteres parecidos nas bordas das células antes de comparar, e essa aparagem também alcança uma marca de ordem de bytes no início de uma célula, então um cabeçalho repetido vindo de um segundo arquivo juntado ainda pode ser reconhecido. As células do resultado, porém, mantêm o caractere.
A exportação CSV do app Tablora começa de propósito com uma marca de ordem de bytes, para que as planilhas abram corretamente textos acentuados, em turco, japonês e outras escritas não latinas. Se você colar aqui um arquivo assim, o inspetor remove essa marca e o primeiro cabeçalho chega limpo.
Outros caracteres invisíveis
Espaços de largura zero e caracteres parecidos não são removidos. Se um cabeçalho continuar sem corresponder depois dessa etapa, procure-os na origem.
Dados de entrada
- Texto da tabela
- id,name 1,Mira
- Delimitador
- ,
Resultados
- Linhas
- 2
- Colunas
- 2
| id | name |
|---|---|
| 1 | Mira |
- Linhas com largura diferente
- 0