Konwertuj TXT na VCARD
Przekonwertuj uporządkowaną listę kontaktów TXT na zgodny plik vCard do importu do telefonu i książki adresowej.
Konwertuj pliki TXT online
Nie mamy jeszcze dedykowanego konwertera online dla TXT na VCARD, ale pliki TXT możesz przekonwertować online na te i inne formaty:
Jak konwertować txt do vcard
- Kontakty i książki adresowe
- Brak ocen.
Telefony i aplikacje książki adresowej zwykle importują kontakty z plików .vcf, a nie z list w formacie zwykłego tekstu. Konwersja ustrukturyzowanej listy kontaktów TXT tworzy plik, który można przenosić między urządzeniami, udostępniać lub importować do programów pocztowych i programów do zarządzania kontaktami.
Czym jest format TXT
.txt to nieustrukturyzowany format zwykłego tekstu używany przez Notepad, TextEdit, narzędzia terminalowe, starsze aplikacje i ręcznie zarządzane listy kontaktów. Nie zawiera standardowych pól kontaktu ani separatora.
Lista kontaktów może zawierać jeden kontakt w każdym wierszu, kolumny rozdzielone przecinkami lub tabulatorami albo etykiety takie jak Name:, Phone: i Email:. Przed konwersją sprawdź zawartość; samo rozszerzenie nie pozwala określić, która wartość jest nazwiskiem, numerem telefonu, kodem pocztowym lub notatką.
Czym jest format vCard
vCard to ustrukturyzowany standard kontaktów, zwykle zapisywany z rozszerzeniem .vcf. Może przechowywać sformatowaną nazwę, oddzielne imię i nazwisko, numery telefonów, adresy e-mail, organizację, adres pocztowy, witrynę internetową, notatki oraz, zależnie od wersji i aplikacji, zdjęcie kontaktu.
Pojedynczy plik VCF może zawierać jeden kontakt lub wiele kontaktów. vCard 3.0 jest ogólnie bardziej zgodny ze starszymi telefonami i komputerowymi książkami adresowymi; vCard 4.0 oferuje nowsze funkcje, ale nie jest obsługiwany przez każdy importer. Android, iOS, Outlook, Thunderbird, Apple Contacts i Google Contacts obsługują vCard, chociaż mapowanie pól różni się między aplikacjami.
Konwertowanie TXT za pomocą LibreOffice i Thunderbirda
- Otwórz plik TXT w LibreOffice Calc. W oknie dialogowym importu wybierz Separated by i określ rzeczywisty separator, taki jak Tab, przecinek lub średnik. Sprawdź, czy każde pole pojawia się w prawidłowej kolumnie.
- Uporządkuj tabelę i użyj wiersza nagłówka z jednoznacznymi nazwami, takimi jak
First Name,Last Name,Mobile Number,EmailiOrganization. Zapisz ją jakocontacts.csvza pomocą opcji File → Save As. - Otwórz książkę adresową Thunderbirda i wybierz Tools → Import. Wybierz opcję importu książki adresowej CSV lub tekstowej, a następnie przypisz każdą kolumnę źródłową do odpowiedniego pola Thunderbirda.
- Sprawdź kilka zaimportowanych rekordów pod kątem odwróconej kolejności imion i nazwisk, utraconych zer wiodących, nieprawidłowych typów telefonów, uszkodzonych znaków diakrytycznych i nieprawidłowo sformatowanych adresów e-mail.
- Wybierz zweryfikowane kontakty i użyj opcji Tools → Export. Zapisz wynik jako
contacts.vcf; jeśli Thunderbird oferuje wybór wersji, wybierz vCard 3.0.
Nazwy menu mogą się nieznacznie różnić w poszczególnych wersjach Thunderbirda. Jeśli kreator importu nie rozpoznaje pliku jako CSV, najpierw zapisz go z programu Calc jako rozdzielany przecinkami plik CSV z kodowaniem UTF-8.
Użycie lokalnego skryptu Python dla danych rozdzielanych tabulatorami
Skrypt jest odpowiedni, gdy plik TXT zawiera wiersz nagłówka o nazwach name, phone, email i opcjonalnie organization, a każdy wiersz rozdzielony tabulatorami zawiera jeden kontakt. Zapisz go jako txt_to_vcard.py:
import csv
import sys
def escape(value):
value = str(value or '').replace('\\r\\n', '\\n').replace('\\r', '\\n')
return value.replace('\\', '\\\\').replace(';', '\\;').replace(',', '\\,').replace('\\n', '\\n')
def fold(line):
parts = []
current = ''
limit = 75
for character in line:
if len((current + character).encode('utf-8')) > limit:
parts.append(current)
current = ' ' + character
limit = 74
else:
current += character
parts.append(current)
return '\\r\\n'.join(parts)
with open(sys.argv[1], encoding='utf-8-sig', newline='') as source, open('contacts.vcf', 'w', encoding='utf-8', newline='') as output:
contacts = csv.DictReader(source, delimiter='\\t')
for contact in contacts:
full_name = (contact.get('name') or '').strip()
name_parts = full_name.split()
family = name_parts[-1] if name_parts else ''
given = ' '.join(name_parts[:-1])
lines = [
'BEGIN:VCARD',
'VERSION:3.0',
'FN:' + escape(full_name),
'N:' + escape(family) + ';' + escape(given) + ';;;'
]
phone = escape(contact.get('phone', ''))
email = escape(contact.get('email', ''))
organization = escape(contact.get('organization', ''))
if phone:
lines.append('TEL;TYPE=CELL:' + phone)
if email:
lines.append('EMAIL:' + email)
if organization:
lines.append('ORG:' + organization)
lines.extend(['END:VCARD'])
output.write('\\r\\n'.join(fold(line) for line in lines) + '\\r\\n')Uruchom go za pomocą polecenia python txt_to_vcard.py contacts.txt. Skrypt tworzy plik contacts.vcf w bieżącym katalogu. Jego parser nazw traktuje ostatnie słowo oddzielone spacją jako nazwisko, dlatego w przypadku nazwisk złożonych, tytułów, przyrostków lub oddzielnych kolumn imienia i nazwiska należy zmodyfikować tę logikę.
Użycie konwertera online dla danych niewrażliwych
Usługi online, takie jak CloudConvert lub Online-Convert, mogą oferować konwersję CSV do VCF, ale obsługa TXT i mapowanie pól różnią się między usługami. Jeśli usługa nieprawidłowo rozpoznaje separator TXT, otwórz plik w LibreOffice Calc, zapisz go jako CSV w kodowaniu UTF-8, a następnie przekonwertuj ten plik CSV do VCF. Przesyłaj tylko małą, zanonimizowaną próbkę lub kontakty nieprywatne; lista kontaktów zawiera dane osobowe i może być przechowywana przez usługę. Lokalny proces z użyciem Thunderbirda lub skryptu pozwala uniknąć takiego ujawnienia danych.
Kontrola jakości i zgodności
TXT nie ma uniwersalnego schematu kontaktów, dlatego automatyczna konwersja nie może niezawodnie określić znaczenia pól. Ujednolić numery telefonów, zachowaj kody krajów i sprawdź wartości zawierające przecinki, tabulatory, średniki, znaki końca wiersza lub zera wiodące przed eksportem.
Użyj UTF-8, aby zachować imiona i nazwiska ze znakami diakrytycznymi. Wartości tekstowe vCard wymagają stosowania znaków ucieczki dla odwrotnych ukośników, przecinków, średników i znaków końca wiersza; wygenerowane wiersze należy również składać, gdy przekraczają limit długości wiersza vCard. Przetestuj kilka rekordów przed zaimportowaniem dużego pliku, a następnie sprawdź, czy nie występują zduplikowane kontakty, obcięte pola, nieobsługiwane zdjęcia oraz nieprawidłowe mapowanie nazw lub typów telefonów.
Porównanie formatu TXT z VCARD
Jak formaty TXT i VCARD wypadają w porównaniu pod względem najważniejszych cech dla tej konwersji.
| Cecha | .TXT Plain Text File | .VCARD vCard |
|---|---|---|
| Otwarty standard | Tak | Tak |
| Kompresja | Bez kompresji | Bez kompresji |
| Typowy rozmiar pliku | Bardzo mały | Bardzo mały |
| Otwiera się w przeglądarce internetowej | Tak, natywnie | Nie |
| Dalsza edycja | Łatwy | Łatwy |
| Obsługa metadanych | Brak | Podstawowy |
| Czytelny tekstowo | Tak | Tak |
| Najlepszy do | Wymiana danych | Udostępnianie i dystrybucja |
| Wprowadzono | — | 1996 |
| Twórca | — | IETF |
| Typ MIME | text/plain | text/vcard |
Baza danych obecnie nie zawiera żadnych bezpośrednich linków do konwerterów plików txt.
Najczęściej zadawane pytania
Czy konwersja TXT do vCard zachowa wszystkie dane kontaktowe?
Niezawodnie zostaną przeniesione tylko te pola kontaktu, które można zidentyfikować w uporządkowanym pliku TXT. Nierozpoznane kolumny, formatowanie i inne teksty mogą zostać pominięte lub umieszczone w polu notatek, zależnie od reguł konwersji.
Czy listę kontaktów TXT można zamienić na wiele plików vCard?
Tak, jeśli plik TXT zawiera wyraźne separatory między kontaktami i spójne nazwy pól. Bez tych oznaczeń kilka osób może zostać połączonych w jeden kontakt albo jedna osoba może zostać podzielona na wiele kontaktów.
Dlaczego po konwersji TXT do vCard nazwy lub numery telefonów są nieprawidłowe?
TXT nie ma uniwersalnej struktury listy kontaktów, dlatego przecinki, tabulatory, znaki końca linii, nagłówki i formaty numerów telefonów mogą zostać błędnie zinterpretowane. Spójne nazwy pól i separatory są ważne dla prawidłowego mapowania pól.
Czy konwersja TXT do vCard zachowa nazwiska ze znakami diakrytycznymi i znaki specjalne?
Zwykle tak, jeśli kodowanie tekstu źródłowego i kodowanie znaków vCard zostaną prawidłowo obsłużone. Niezgodność może spowodować zniekształcenie znaków diakrytycznych lub innych symboli, a zgodność zależy również od wersji vCard obsługiwanej przez książkę adresową.