vCard 2.1, 3.0 und 4.0 im Vergleich
| 2.1 | 3.0 | 4.0 | |
|---|---|---|---|
| Standard | Spezifikation des versit-Konsortiums (kein RFC) | RFC 2426 | RFC 6350 |
| Veröffentlicht | 1996 | 1998 | 2011 |
| Pflichtzeilen | VERSION; in der Praxis N | VERSION, N, FN | VERSION, FN |
| So steht eine Mobilnummer da | TEL;CELL: | TEL;TYPE=CELL: | TEL;TYPE=cell: |
| Zeichensatz | CHARSET= in jeder Zeile, oft eine lokale Codepage | nicht in der Datei angegeben; in der Praxis UTF-8 | immer UTF-8 |
| Text mit Umlauten und Akzenten | evtl. Quoted-Printable | reiner Text | reiner Text |
| Fotos | ENCODING=BASE64 | ENCODING=b (Base64) | eine URI, oft eine data:-URI |
| Wer sie schreibt | ältere Telefone, klassisches Outlook | iPhone, iCloud, Google Contacts | bisher wenige Apps |
Um zu sehen, welche du hast, öffne die Datei in einem Texteditor und lies die zweite Zeile. VERSION:3.0 begegnet dir am häufigsten.
Die Eigenschaften, die du siehst
| Eigenschaft | Was sie enthält | Beispiel |
|---|---|---|
FN | Den Namen, wie er angezeigt werden soll | FN:Amélie Lefèvre |
N | Den Namen in fünf Teilen: Nachname; Vorname; weitere Namen; Präfixe; Suffixe | N:Lefèvre;Amélie;;; |
ORG | Firma, dann eine Abteilung, falls vorhanden | ORG:Northfield Tools;Sales |
TITLE | Position | TITLE:Sales Director |
TEL;TYPE=… | Eine Telefonnummer; Typen sind u. a. CELL, WORK, HOME, FAX und VOICE | TEL;TYPE=WORK,VOICE:+1 555 555 0100 |
EMAIL | Eine E-Mail-Adresse, wahlweise mit Typ | EMAIL;TYPE=WORK:[email protected] |
ADR | Eine Postanschrift in sieben Teilen: Postfach; Adresszusatz; Straße; Ort; Region; Postleitzahl; Land | ADR;TYPE=WORK:;;12 Main St;Springfield;IL;62701;USA |
URL | Eine Website | URL:https://example.com |
NOTE | Freier Text | NOTE:Met at booth 14\, spring show |
PHOTO | Ein Bild, in der Datei codiert oder verlinkt | PHOTO;ENCODING=b;TYPE=JPEG:/9j/4AAQ… |
Bei den Namen der Eigenschaften spielt Groß- und Kleinschreibung keine Rolle, tel und TEL bedeuten dasselbe. Zeilen, die mit X- beginnen, sind eigene Zusätze eines Herstellers, etwa X-SOCIALPROFILE. Apple und Google gruppieren außerdem einen Wert mit einer eigenen Bezeichnung, indem sie beiden Zeilen dasselbe Präfix geben: item1.EMAIL:[email protected] und item1.X-ABLabel:Billing gehören zusammen. Ein Leser, der das Präfix ignoriert, bekommt trotzdem die E-Mail, nur ohne ihre Bezeichnung.
Derselbe Kontakt in jeder Version
vCard 2.1, mit dem Namen mit Akzenten in Quoted-Printable:
BEGIN:VCARD
VERSION:2.1
N;CHARSET=UTF-8;ENCODING=QUOTED-PRINTABLE:Lef=C3=A8vre;Am=C3=A9lie;;;
FN;CHARSET=UTF-8;ENCODING=QUOTED-PRINTABLE:Am=C3=A9lie Lef=C3=A8vre
TEL;CELL;VOICE:+1 555 555 0142
END:VCARD
vCard 3.0:
BEGIN:VCARD
VERSION:3.0
N:Lefèvre;Amélie;;;
FN:Amélie Lefèvre
TEL;TYPE=CELL:+1 555 555 0142
END:VCARD
vCard 4.0, mit der Nummer als tel:-Link:
BEGIN:VCARD
VERSION:4.0
FN:Amélie Lefèvre
N:Lefèvre;Amélie;;;
TEL;TYPE=cell;VALUE=uri:tel:+1-555-555-0142
END:VCARD
Zeilenumbruch und Quoted-Printable
Lange Zeilen werden umbrochen (Folding). In 3.0 und 4.0 teilt ein Programm eine lange Zeile, indem es einen Zeilenumbruch mit einem folgenden Leerzeichen oder Tabulator einfügt; RFC 6350 verlangt Zeilen mit höchstens 75 Oktetten. Ein Leser fügt sie zusammen, indem er den Zeilenumbruch und genau dieses eine Zeichen löscht, sonst nichts. Ein Tool, das auch das nächste Leerzeichen löscht oder das erste behält, klebt zwei Wörter zusammen oder setzt ein Leerzeichen mitten in eine E-Mail-Adresse. Ein Foto in Base64 läuft über Hunderte umbrochene Zeilen, deshalb ist eine .vcf mit Bildern ein Vielfaches so groß wie eine ohne.
Quoted-Printable gehört zu 2.1. Jedes Byte außerhalb von einfachem ASCII wird zu einem Gleichheitszeichen und zwei Hex-Ziffern, „é“ in UTF-8 ist also =C3=A9. Eine Zeile, die auf = endet, ist ein weicher Umbruch: Der Wert geht am Anfang der nächsten Zeile weiter.
Zeichensätze und kaputte Namen
- Eine 2.1-Datei ohne
CHARSET=wurde meist in der lokalen Codepage des Telefons oder von Windows geschrieben. Als UTF-8 gelesen, werden ihre Umlaute und Akzente zu Fragezeichen. - „é“, wo „é“ stehen sollte, heißt das Gegenteil: UTF-8-Text, als Windows-1252 gelesen, oft von Excel.
- Eine 3.0-Datei gibt ihren Zeichensatz nicht an. Heutige Exporte schreiben UTF-8, und ein Leser sollte davon ausgehen.
- Eine 4.0-Datei ist per Definition UTF-8.
- In 3.0 und 4.0 wird ein Komma, Semikolon oder Backslash innerhalb eines Werts mit einem Backslash maskiert, und ein Zeilenumbruch in einer Notiz wird als
\ngeschrieben. Ein Leser, der das übergeht, teilt einen Wert in zwei.
Zwischen Versionen und in CSV umwandeln
Der VCF-in-CSV-Konverter liest alle drei Versionen, umbrochene Zeilen, Quoted-Printable-Text, item1.-Bezeichnungen und Dateien in UTF-8, UTF-16 oder Windows-1252 und schreibt dann eine CSV mit einer Zeile pro Kontakt. Andersherum macht er aus einer CSV eine Datei in vCard 3.0. Er läuft in deinem Browser, und nichts wird hochgeladen. Fotos werden übersprungen. Wenn du zuerst die Grundlagen brauchst, lies Was ist eine VCF-Datei?.
Krane für iPhone
Mit Krane: vCards aus Papierkarten
Krane auf iPhone, iPhone Duo und iPad arbeitet vom anderen Ende her: Die App liest eine gedruckte Visitenkarte in einen Kontakt und fügt ihn dann zu Apple Kontakten hinzu oder teilt ihn als vCard. Mit Krane Pro exportiert sie auch eine CSV oder sendet den Kontakt an HubSpot, Salesforce oder Pipedrive. Der Visitenkarten-Scanner ist für 10 Scans pro Woche kostenlos. Er kann keine .vcf importieren.