Konverze xml do vcard

Online konvertor XML do VCARD zdarma

Převádějte strukturované XML exporty kontaktů do importovatelných souborů vCard v kódování UTF-8.

Převést XML na VCARD online - zdarma

Uploading…
Vybrané soubory přesahují celkový limit 15 MB. Vyberte méně nebo menší soubory.

Váš soubor je zpracován okamžitě a není ukládán na naše servery.

Jak to funguje

  1. 1/3

    Nahrajte soubor .xml

    Kliknutím vyberte soubor, který chcete převést, nebo ho jednoduše přetáhněte do vyznačené oblasti.

  2. 2/3

    Spusťte převod .xml do .vcard

    Po úspěšném nahrání souboru klikněte na převod, jakmile budete připraveni.

  3. 3/3

    Stáhněte převedený soubor .vcard

    Výsledek převodu je připraven ke stažení.

Jak převést soubor xml do formátu vcard

Telefon, emailový klient nebo aplikace adresáře může vyžadovat kontakty ve formátu vCard (.vcf) namísto exportu XML specifického pro danou aplikaci. Převod souboru usnadňuje import, sdílení, úpravy a přenos kontaktů mezi podporovanými zařízeními a programy.

Co je XML

XML je textový formát založený na značkách, který slouží k ukládání a výměně hierarchických dat. Soubory XML s kontakty mohou vytvářet systémy CRM, emailoví klienti, adresáře, webové služby, zálohy zařízení a vlastní databáze.

XML nemá univerzální schéma kontaktů. Jeden soubor může používat <contact>, <firstName> a <phone>; jiný může používat <person>, <given> a <telephoneNumber>. Před převodem určete opakující se prvek kontaktu a pole obsahující jména, emailové adresy, telefonní čísla, organizace, poštovní adresy, poznámky a identifikátory. Detekci polí mohou ovlivnit také namespaces a vnořené prvky.

Co je formát vCard

vCard je standardizovaný formát prostého textu pro záznamy kontaktů, který se obvykle ukládá s příponou .vcf. Soubor může obsahovat jeden nebo více kontaktů a lze jej importovat do telefonů, emailových klientů, adresářů, systémů CRM a desktopových správců kontaktů.

Každý záznam začíná řetězcem BEGIN:VCARD a končí řetězcem END:VCARD. Mezi běžné vlastnosti patří FN pro zobrazované jméno, N pro strukturované části jména, TEL, EMAIL, ORG, ADR, NOTE a UID. vCard 3.0 je obvykle nejbezpečnější volbou z hlediska kompatibility; vCard 4.0 podporuje novější funkce, ale ve starších telefonech a aplikacích se nemusí importovat správně.

Jak převést XML na vCard

Pro běžný export kontaktů použijte converter na webu 101convert.com: nahrajte soubor XML, jako výstupní formát zvolte VCARD, spusťte převod a stáhněte výsledný soubor .vcf. Není nutná instalace softwaru. Pokud XML pochází z proprietární aplikace, před importem výstup zkontrolujte.

Pokud automatická detekce polí selže, použijte XML editor, program pro transformaci dat nebo vlastní skript:

  1. Otevřete XML a vyhledejte prvek, který se opakuje jednou pro každý kontakt.
  2. Namapujte zdrojová pole na vlastnosti vCard: zobrazované jméno na FN, křestní a příjmení na N, telefonní čísla na TEL, emailové adresy na EMAIL, společnost na ORG a části poštovní adresy na ADR.
  3. Zvolte vCard 3.0, pokud přijímající aplikace výslovně nepodporuje vCard 4.0.
  4. Vygenerujte jeden úplný blok vCard pro každý kontakt a uložte všechny bloky jako soubor v kódování UTF-8, například contacts.vcf.
  5. Importujte soubor prostřednictvím nabídky kontaktů cílové aplikace, obvykle Contacts → Import nebo File → Import.

Minimální záznam vCard 3.0 vypadá takto:

BEGIN:VCARD
VERSION:3.0
N:Doe;Jane;;;
FN:Jane Doe
TEL;TYPE=CELL:+1-202-555-0147
EMAIL:jane.doe@example.com
ORG:Example Ltd
END:VCARD

Pro opakované převody může standardní knihovna jazyka Python analyzovat jednoduchou strukturu XML a generovat vCards. Upravte názvy prvků a cesty podle zdroje:

import xml.etree.ElementTree as ET

def esc(value):
    return (value or "").replace("\\", "\\\\").replace(";", "\\;") \
        .replace(",", "\\,").replace("\r", "").replace("\n", "\\n")

root = ET.parse("contacts.xml").getroot()
blocks = []
for contact in root.findall(".//contact"):
    first = contact.findtext("firstName", "")
    last = contact.findtext("lastName", "")
    full = (first + " " + last).strip()
    name = ";".join((esc(last), esc(first), "", "", ""))
    lines = [
        "BEGIN:VCARD", "VERSION:3.0", f"N:{name}",
        f"FN:{esc(full)}"
    ]
    phone = contact.findtext("phone", "")
    email = contact.findtext("email", "")
    if phone:
        lines.append(f"TEL:{esc(phone)}")
    if email:
        lines.append(f"EMAIL:{esc(email)}")
    lines.append("END:VCARD")
    blocks.append("\r\n".join(lines))

with open("contacts.vcf", "w", encoding="utf-8", newline="") as output:
    output.write("\r\n".join(blocks) + "\r\n")

Spusťte jej příkazem python convert_contacts.py. Produkční skript musí zpracovávat XML namespaces, chybějící hodnoty, více prvků telefonních čísel a emailů, zalamování řádků vCard u dlouhých řádků a escapování specifické pro jednotlivé vlastnosti. Parametry TYPE by měl přiřazovat pouze tehdy, když XML identifikuje číslo jako mobilní, pracovní, domácí nebo faxové.

Omezení kvality a kompatibility

Kvalita převodu závisí na schématu XML, nikoli na jeho příponě. Converter nedokáže spolehlivě určit význam neoznačeného čísla a proprietární pole nemusí mít ve vCard ekvivalent. Fotografie, skupiny, vlastní pole, oprávnění, propojené záznamy, více adres a údaje o vztazích mohou být odstraněny nebo transformovány.

Původní XML si ponechte jako zálohu. Před převodem velkého adresáře otestujte malou ukázku a po importu zkontrolujte jména, kódování znaků, popisky telefonních čísel, duplicitní záznamy, text mimo latinku a zalomení řádků. Opětovný import stejného souboru .vcf může vytvořit duplicity a některé aplikace podporují pouze podmnožinu vlastností vCard 3.0 nebo 4.0.

XML vs VCARD: srovnání formátů

Jak si formáty XML a VCARD stojí v nejdůležitějších vlastnostech pro tento převod.

Srovnání souborových formátů XML a VCARD
Vlastnost .XML Extensible Markup Language .VCARD vCard
Čitelný jako prostý text Ano Ano
Datové typy Typovaný Částečně
Vnořené struktury Ano Ano
Vzorce Ne Ne
Více tabulek nebo listů — Ne
Typická velikost souboru Malé Velmi malé
Otevřený standard Ano Ano
Nejvhodnější pro Výměna dat Sdílení a distribuce
Zavedeno 1998 1996
Vývojář W3C IETF
MIME typ application/xml text/vcard

Databáze v současné době neobsahuje žádný program na konverzi souborů xml.

Často kladené otázky

Je konvertor XML do VCARD zdarma?

Ano, převod XML do VCARD na 101convert.com je zcela zdarma. Není potřeba registrace, e-mail ani instalace. Pokud potřebujete vyšší limit velikosti souboru nebo chcete převádět více souborů najednou, podívejte se na naše tarify.

Jak velký může být můj soubor XML?

Můžete nahrát soubory XML o velikosti až 15 MB a převést až 100 souborů najednou v jedné dávce.

Co se stane s nahranými soubory?

Soubory se zpracovávají automaticky a několik minut po převodu jsou z našich serverů smazány. Vaše soubory nikdy neprohlížíme ani nesdílíme.

Musím pro převod XML do VCARD instalovat nějaký software?

Ne. Převod XML do VCARD probíhá kompletně online v prohlížeči a funguje na Windows, Macu, Linuxu, Androidu i iPhonu.

Konverze se nezdařila?

Ve většině případů je příčinou nesprávný formát souboru. Nahrajte platný soubor XML pro tuto konverzi z XML do VCARD. Občas může být chyba také na naší straně. Analyzujeme opakované neúspěšné konverze, a pokud zjistíme závadu konvertoru, vypneme jej nebo opravíme.