Cookies voor statistiek en advertenties
We gebruiken cookies voor statistiek en voor advertenties, allebei naar Google. Weigeren verandert niets aan wat je te zien krijgt.Lees de privacypagina
VCF
Het visitekaartformaat dat telefoons en mailprogramma’s onderling uitwisselen.
VCF
VCF is een puur tekstformaat dat in elke editor opengaat. Het wordt gebruikt voor gegevens tussen programma’s verplaatsen.
De extensie is .vcf en de volledige naam vCard Contact. Allebei zeggen ze minder dan wat het bestand kan bevatten, en daar gaat de rest van deze pagina over.
Het gaat terug tot 1995. De specificatie is RFC 6350.
Aan een formaat dat zo lang leesbaar is gebleven kun je iets toevertrouwen dat je over tien jaar terug wilt hebben.
Ze is volledig gepubliceerd, dus wie het formaat wil uitvoeren kan dat uit het document doen in plaats van door te kijken hoe anderen het doen. Daarom duikt het in zo veel programma’s op, en daarom gaan bestanden van twintig jaar geleden nog steeds open. Openbaar is niet hetzelfde als royaltyvrij: waar een formaat een codec omhult, is de octrooilicentie een aparte vraag waarop de standaard geen antwoord geeft.
VCF bewaart zijn inhoud precies. Opnieuw opslaan verandert niets, dus je kunt het zo vaak openen, bewerken en wegschrijven als je wilt zonder dat er schade opstapelt — en dat is wat er een werkformaat van maakt in plaats van een afleverformaat.
Google Contacts, Apple Contacts en Microsoft Outlook lezen het, en de meeste programma’s van dezelfde soort ook.
Als een bestand niet opengaat ligt het zelden aan het formaat — vaker is het programma ouder dan het formaat. Converteren naar iets ouders is de betrouwbare weg eromheen, en daarvoor is de rest van deze site bedoeld.
Geen enkele browser leest het.
Dat is veruit de meest voorkomende reden om het te converteren: niet dat het formaat slecht is, maar dat de plek waar je het bestand wilt tonen het niet kan lezen.
VCF is bedoeld om te openen en te wijzigen. Houd het bestand in dit formaat zolang het werk loopt, en exporteer eruit wanneer er een afgeronde versie nodig is.
Een telefoon. Bijna altijd. Contacten exporteren vanuit Android, iPhone, Google Contacten of Outlook levert een VCF op, en één contact delen via bericht of e-mail hangt er ook eentje aan. Het is het enige formaat waar ze het allemaal over eens zijn, wat waarom het overleeft ondanks een ontwerp uit 1995.
De andere gangbare bron is een mailclient. Handtekeningblokken, adresboeken en het kaartje bij een zakelijke e-mail zijn allemaal vCards. Kreeg je ongevraagd een bestand met een naam als contact.vcf, dan is dat wat er gebeurde.
Dit verrast mensen in beide richtingen. Een vCard gedeeld vanaf een telefoon bevat één persoon; een vCard geëxporteerd uit een adresboek bevat iedereen, na elkaar in hetzelfde bestand, elk tussen BEGIN:VCARD- en END:VCARD-regels.
Een VCF van 4 MB is dus geen beschadigd contact — het is je hele adresboek, en importeren voegt elk item toe. Andersom geeft iemand je geëxporteerde bestand sturen om één nummer te delen, de hele lijst weg. Open het eerst in een teksteditor als je niet zeker weet wat je hebt.
Drie versies zijn in omloop en ze zijn niet uitwisselbaar. Versie 2.1 is uit 1996 en codeert niet-Engelse tekst op manieren die moderne software vaak verkeerd leest. Versie 3.0 is degene die de meeste systemen schrijven. Versie 4.0, vastgelegd in RFC 6350, is de huidige standaard en wordt nog niet overal geaccepteerd.
RFC 6350 zet de VERSION-regel direct na BEGIN:VCARD, maar de oudere versies eisen alleen dat hij ergens in het kaartje staat, dus zoek bij een 2.1-bestand naar het woord in plaats van regel twee te lezen.
Versie 4.0 koos definitief voor UTF-8 en het probleem verdween grotendeels. Oudere bestanden hadden die luxe niet: 2.1 gebruikte quoted-printable-codering met een tekenset per veld gedeclareerd, en veel software schreef dat inconsistent.
Het zichtbare resultaat is namen met vraagtekens, hoofdletters op vreemde plekken, of reeksen zoals =C3=BC midden in een achternaam. Dat laatste is quoted-printable dat doorschemert — de data is intact, de lezer decodeert hem alleen niet.
Een vCard kan een contactfoto insluiten als base64-tekst, en adresboeken doen dat standaard. Dat is waarom een export van achthonderd contacten meerdere megabytes is in plaats van een paar tientallen kilobytes.
Het is ook waarom een VCF soms niet importeert: sommige systemen leggen een groottelimiet per kaart op, en een foto op hoge resolutie duwt een enkel item daarover. Stopt een bulkimport halverwege, dan is een te grote foto op één contact een waarschijnlijke oorzaak.
Dit is verreweg de meest voorkomende omzetting: contacten naar een spreadsheet, om duplicaten op te ruimen, voor een mailmerge, of om te importeren in een systeem dat alleen CSV accepteert. De koppeling werkt omdat het meeste van een vCard eenvoudige velden zijn.
Wat niet netjes overkomt, is herhaling. Een contact met vier telefoonnummers en drie e-mailadressen moet kolommen worden, en elke tool kiest een iets andere set kolomnamen. Voor het opschonen van een lijst maakt dat niet uit; voor een verliesvrij archief bewaar je het originele VCF.
De betrouwbare volgorde is exporteren naar VCF, het bestand overzetten, importeren. Het werkt in beide richtingen tussen Android en iPhone, en het hangt niet af van beide apparaten die hetzelfde cloudaccount vertrouwen.
Twee dingen om achteraf te controleren. Duplicaten: importeren zonder de bestemming eerst te wissen, voegt samen in plaats van te vervangen. En groepen of labels: die vallen buiten de kern van het formaat en zijn het meest waarschijnlijk leeg aan te komen.
vCard staat toe dat programma’s eigen X-velden toevoegen voor gegevens die de standaard niet dekt — een interne klant-ID, een relatietype, een aangepast label. Die velden beginnen met X- volgens de specificatie, wat andere software vertelt ze te negeren in plaats van te laten crashen op iets onbekends.
Bij omzetten naar CSV verdwijnen die velden meestal stilzwijgend, want er is geen standaardkolom om ze in te plaatsen. Bevat een export gegevens die belangrijk lijken maar nergens in de omgezette spreadsheet terugkomen, kijk dan naar de originele VCF op regels die met X- beginnen.
| Extensie | .vcf, .vcard |
|---|---|
| Mediatype | text/vcard |
| Voor het eerst gepubliceerd | 1995 |
| Specificatie | RFC 6350 |