VCF

O que é um arquivo VCF?

O formato de cartão de contato que celulares e programas de e-mail trocam entre si.

O que é VCF

VCF é um formato de texto puro que abre em qualquer editor. Ele é usado para mover dados entre programas.

A extensão é .vcf e o nome por extenso é vCard Contact. Os dois importam menos do que aquilo que o arquivo consegue carregar, e é disso que trata o resto desta página.

De onde vem VCF

Ele remonta a 1995. A especificação é RFC 6350.

A um formato que se manteve legível por tanto tempo dá para confiar algo que você quer de volta daqui a dez anos.

A especificação é pública

Ela está publicada por inteiro, então dá para implementá-la a partir do documento em vez de por observação — é por isso que o formato aparece em tantos programas e por isso que arquivos escritos há vinte anos ainda abrem. Especificação publicada não é o mesmo que livre de royalties: quando o formato embrulha um codec, o licenciamento das patentes é uma questão à parte, que a norma não resolve.

Nada é jogado fora

VCF guarda o conteúdo exatamente. Salvar de novo não muda nada, então dá para abrir, editar e salvar quantas vezes você quiser sem acumular estrago — e é isso que faz dele um formato de trabalho e não de entrega.

O que abre VCF

Google Contacts, Apple Contacts e Microsoft Outlook leem esse formato, e a maioria dos programas do mesmo tipo também.

Quando um arquivo não abre, o formato raramente é o problema — mais comum é o programa ser mais antigo que ele. Converter para algo mais antigo é o caminho confiável, e é para isso que serve o resto deste site.

Abrir no navegador

Nenhum navegador lê o formato.

Esse é de longe o motivo mais comum para convertê-lo: não que o formato seja ruim, mas que o lugar onde você quer mostrar o arquivo não consegue lê-lo.

É um formato de trabalho

VCF foi feito para ser aberto e alterado. Mantenha o arquivo nesse formato enquanto o trabalho estiver em andamento e exporte a partir dele sempre que precisar de uma cópia pronta.

De onde vem um VCF

De um celular. Quase sempre. Exportar contatos do Android, iPhone, Google Contatos ou Outlook produz um VCF, e compartilhar um único contato por mensagem ou e-mail anexa um também. É o único formato em que todos concordam, motivo dele sobreviver apesar de ser um design de 1995.

A outra fonte comum é um cliente de e-mail. Assinatura, catálogo de endereço e o cartãozinho anexado a um e-mail corporativo são todos vCards. Se você recebeu um arquivo chamado algo como contato.vcf sem pedir, foi isso que aconteceu.

Um arquivo pode guardar um contato ou cinco mil

Isso pega as pessoas nas duas direções. Um vCard compartilhado de um celular contém uma pessoa; um vCard exportado de um catálogo de endereço contém todo mundo, um depois do outro no mesmo arquivo.

Então um VCF de 4 MB não é um contato corrompido — é sua agenda de contatos inteira, e importar vai adicionar toda entrada. Ao contrário, mandar para alguém seu arquivo exportado para compartilhar um número entrega tudo. Abra num editor de texto primeiro se não tiver certeza qual você tem; a estrutura é óbvia numa olhada.

O número de versão importa mais do que deveria

Três versões circulam e não são intercambiáveis. A versão 2.1 é de 1996 e codifica texto não inglês de jeitos que software moderno frequentemente lê errado. A versão 3.0 é a que a maioria dos sistemas escreve. A versão 4.0 é o padrão atual e ainda não é aceita universalmente.

A especificação da 4.0 coloca a linha de versão logo depois do início do cartão, mas as versões mais antigas só exigem isso em algum lugar do cartão, então num arquivo 2.1 busque a palavra em vez de ler a segunda linha. Vale fazer isso quando uma importação dá errado, porque "este programa não lê meus contatos" frequentemente é "este programa não aceita 4.0" ou "este arquivo é 2.1 e os acentos estão sendo chutados".

Por que os acentos saem errados

A versão 4.0 assentou em UTF-8 e o problema em grande parte sumiu. Arquivos mais antigos não tinham esse luxo: a 2.1 usava codificação imprimível entre aspas com um conjunto de caracteres declarado por campo, e bastante software escrevia isso de forma inconsistente.

O resultado visível é nome com interrogação, letra maiúscula em lugar estranho, ou sequências estranhas no meio de um sobrenome. Essa última é a codificação aparecendo — o dado está intacto, o leitor não está decodificando. Converter o arquivo com uma ferramenta que entende a codificação corrige isso; não precisa redigitar quatrocentos nomes.

Fotos ficam dentro do arquivo

Um vCard consegue embutir a foto de um contato como texto codificado, e catálogos de endereço fazem isso por padrão. É o motivo de uma exportação de oitocentos contatos ter vários megabytes em vez de algumas dezenas de kilobytes.

Também é o motivo de um VCF às vezes falhar ao importar: alguns sistemas impõem um limite de tamanho por cartão, e uma foto em alta resolução empurra uma única entrada além disso. Se uma importação em massa para no meio, uma foto grande demais num contato é uma causa provável.

Convertendo para CSV, e o que muda

Esta é a conversão mais comum de longe: contatos numa planilha, para limpar duplicata, para uma mala direta, ou para importar num sistema que só aceita CSV. O mapeamento funciona porque a maior parte de um vCard é campo simples — nome, organização, telefone, e-mail, endereço.

O que não mapeia limpo é repetição. Um contato com quatro telefones e três e-mails precisa virar colunas, e cada ferramenta escolhe um conjunto ligeiramente diferente de nomes de coluna. Nome estruturado colapsa no que o destino espera, e foto embutida é descartada. Para deduplicar uma lista, nada disso importa; para um arquivo de preservação sem perda, guarde o VCF original.

Movendo contatos entre celulares

A sequência confiável é exportar para VCF, transferir o arquivo, importar. Funciona entre Android e iPhone nas duas direções, e não depende dos dois aparelhos confiarem na mesma conta na nuvem, que é o motivo comum de as pessoas fazerem isso manualmente.

Duas coisas para checar depois. Duplicata: importar sem limpar o destino primeiro mescla em vez de substituir, e a maioria dos catálogos de endereço deduplica mal. E grupo ou etiqueta: fica fora do formato principal, tratado de forma inconsistente, e é o mais provável de chegar vazio. Nome e número viajam de forma confiável; a organização ao redor deles frequentemente não.

Os dados, num lugar só

Identificadores e procedência do formato VCF.
Extensão.vcf, .vcard
Tipo de mídiatext/vcard
Primeira publicação1995
EspecificaçãoRFC 6350

Dúvidas comuns sobre arquivos VCF

Como eu abro um arquivo VCF?

Clique duas vezes e seu aplicativo de contatos oferece para importar. Para ver o que tem dentro primeiro, abra em qualquer editor de texto — é texto puro e a estrutura é legível numa olhada, o jeito mais rápido de distinguir um contato de uma agenda inteira.

Por que meu VCF contém centenas de contatos?

Porque um arquivo único pode guardar qualquer número de cartões, um depois do outro. Uma exportação de um catálogo de endereço contém todo mundo, enquanto um contato compartilhado de um celular contém uma pessoa. Os dois têm a mesma extensão, então conferir antes de importar ou enviar vale os dez segundos.

Como eu converto VCF para Excel?

Converta para CSV, que toda planilha abre direto. Nome, organização, telefone, e-mail e endereço mapeiam limpo. Contatos com vários números se espalham em colunas extras, e fotos embutidas são descartadas.

Por que os caracteres acentuados saem errados?

vCards mais antigos usam codificação com o conjunto de caracteres declarado por campo, e é fácil um leitor chutar errado. Sequências estranhas dentro de um nome significam que o dado está intacto e simplesmente não está sendo decodificado. Arquivos versão 4.0 usam UTF-8 e raramente têm o problema.

Posso transferir contatos do Android para o iPhone com um VCF?

Sim, nas duas direções — exporte para VCF, mova o arquivo por e-mail ou nuvem, depois importe. Funciona sem os dois aparelhos compartilharem uma conta, geralmente o motivo de as pessoas fazerem assim. Confira duplicatas depois, já que importar mescla em vez de substituir.

Um arquivo VCF contém fotos?

Frequentemente, sim — fotos de contato são embutidas como texto codificado, motivo de uma exportação de algumas centenas de contatos poder chegar a vários megabytes. Uma foto grande demais num cartão é uma causa comum de uma importação em massa parar no meio.