Konversi TXT menjadi VCARD
Konversikan daftar kontak TXT terstruktur menjadi file vCard yang kompatibel untuk impor ke ponsel dan buku alamat.
Konversi file TXT secara online
Kami belum punya konverter online khusus untuk TXT ke VCARD, tetapi Anda bisa mengonversi file TXT secara online ke format berikut dan lainnya:
Bagaimana mengkonversi txt ke vcard berkas
- Kontak dan buku alamat
- Belum ada peringkat.
Telepon dan aplikasi buku alamat biasanya mengimpor kontak dari file .vcf, bukan daftar teks biasa. Mengonversi daftar kontak TXT terstruktur menghasilkan file yang dapat ditransfer antarperangkat, dibagikan, atau diimpor ke software email dan kontak.
Apa itu format TXT
.txt adalah format teks biasa tidak terstruktur yang digunakan oleh Notepad, TextEdit, alat terminal, aplikasi lama, dan daftar kontak yang dikelola secara manual. Format ini tidak memiliki field kontak atau delimiter standar.
Daftar kontak dapat berisi satu kontak per baris, kolom yang dipisahkan koma atau tab, atau label seperti Name:, Phone:, dan Email:. Periksa isinya sebelum konversi; ekstensi saja tidak dapat mengidentifikasi nilai mana yang merupakan nama belakang, nomor telepon, kode pos, atau catatan.
Apa itu format vCard
vCard adalah standar kontak terstruktur yang biasanya disimpan dengan ekstensi .vcf. Format ini dapat menyimpan nama berformat, nama depan dan nama keluarga terstruktur, nomor telepon, alamat email, organisasi, alamat pos, situs web, catatan, dan, bergantung pada versi serta aplikasi, foto kontak.
Satu file VCF dapat berisi satu kontak atau beberapa kontak. vCard 3.0 umumnya lebih kompatibel dengan telepon lama dan buku alamat desktop; vCard 4.0 memiliki fitur yang lebih baru, tetapi tidak didukung oleh setiap pengimpor. Android, iOS, Outlook, Thunderbird, Apple Contacts, dan Google Contacts mendukung vCard, meskipun pemetaan field berbeda-beda antar aplikasi.
Mengonversi TXT dengan LibreOffice dan Thunderbird
- Buka file TXT di LibreOffice Calc. Dalam dialog impor, pilih Separated by dan pilih delimiter yang sebenarnya, seperti Tab, koma, atau titik koma. Periksa apakah setiap field muncul di kolom yang benar.
- Bersihkan tabel dan gunakan baris header dengan nama yang jelas seperti
First Name,Last Name,Mobile Number,Email, danOrganization. Simpan sebagaicontacts.csvmelalui File → Save As. - Buka buku alamat Thunderbird dan pilih Tools → Import. Pilih opsi impor CSV atau buku alamat teks, lalu petakan setiap kolom sumber ke field Thunderbird yang sesuai.
- Periksa beberapa data yang diimpor untuk memastikan tidak ada nama yang tertukar, angka nol di awal yang hilang, jenis telepon yang salah, karakter beraksen yang rusak, dan alamat email yang tidak valid.
- Pilih kontak yang telah diverifikasi dan pilih Tools → Export. Simpan hasilnya sebagai
contacts.vcf; pilih vCard 3.0 jika Thunderbird menawarkan pilihan versi.
Nama menu mungkin sedikit berbeda antar versi Thunderbird. Jika wizard impor tidak mengenali file sebagai CSV, simpan terlebih dahulu dari Calc sebagai CSV yang dipisahkan koma dengan encoding UTF-8.
Menggunakan script Python lokal untuk data yang dipisahkan tab
Script cocok digunakan ketika file TXT memiliki baris header bernama name, phone, email, dan secara opsional organization, dengan satu kontak per baris yang dipisahkan tab. Simpan sebagai 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')Jalankan dengan python txt_to_vcard.py contacts.txt. Script tersebut membuat contacts.vcf di direktori saat ini. Parser namanya menganggap kata terakhir yang dipisahkan spasi sebagai nama keluarga, jadi ubah logika tersebut untuk nama keluarga majemuk, gelar, sufiks, atau kolom nama depan dan nama belakang yang terpisah.
Menggunakan konverter online untuk data yang tidak sensitif
Layanan online seperti CloudConvert atau Online-Convert mungkin menyediakan konversi CSV ke VCF, tetapi dukungan TXT langsung dan pemetaan field berbeda-beda. Jika layanan tersebut tidak menerima delimiter TXT dengan benar, buka file di LibreOffice Calc, simpan sebagai CSV UTF-8, lalu konversi CSV tersebut ke VCF. Unggah hanya sampel kecil yang telah disanitasi atau kontak yang tidak bersifat pribadi; daftar kontak berisi data pribadi dan mungkin disimpan oleh layanan tersebut. Alur kerja Thunderbird lokal atau script dapat menghindari pengungkapan tersebut.
Pemeriksaan kualitas dan kompatibilitas
TXT tidak memiliki skema kontak universal, sehingga konversi otomatis tidak dapat menentukan makna field secara andal. Normalisasi nomor telepon, pertahankan kode negara, dan periksa nilai yang berisi koma, tab, titik koma, jeda baris, atau angka nol di awal sebelum mengekspor.
Gunakan UTF-8 untuk mempertahankan nama yang memiliki aksen. Nilai teks vCard memerlukan escaping untuk garis miring terbalik, koma, titik koma, dan jeda baris; baris yang dihasilkan juga harus dilipat ketika melebihi batas panjang baris vCard. Uji beberapa data sebelum mengimpor file besar, lalu periksa kontak duplikat, field yang terpotong, foto yang tidak didukung, serta pemetaan nama atau jenis telepon yang salah.
TXT vs VCARD: perbandingan format
Bagaimana format TXT dan VCARD dibandingkan pada properti yang paling penting untuk konversi ini.
| Properti | .TXT Plain Text File | .VCARD vCard |
|---|---|---|
| Standar terbuka | Ya | Ya |
| Kompresi | Tanpa kompresi | Tanpa kompresi |
| Ukuran file umum | Sangat kecil | Sangat kecil |
| Terbuka di browser web | Ya, secara native | Tidak |
| Pengeditan lanjutan | Mudah | Mudah |
| Dukungan metadata | Tidak ada | Dasar |
| Dapat dibaca teks biasa | Ya | Ya |
| Paling cocok untuk | Pertukaran data | Berbagi dan distribusi |
| Diperkenalkan | — | 1996 |
| Pengembang | — | IETF |
| Tipe MIME | text/plain | text/vcard |
Basis data saat ini tidak berisi txt file converter.
Pertanyaan yang sering diajukan
Apakah konversi TXT ke vCard akan mempertahankan semua detail kontak saya?
Hanya kolom kontak yang dapat diidentifikasi dalam file TXT terstruktur yang dapat ditransfer dengan andal. Kolom yang tidak dikenali, pemformatan, dan teks lainnya mungkin dihilangkan atau ditempatkan di kolom catatan, bergantung pada aturan konversi.
Bisakah daftar kontak TXT diubah menjadi beberapa vCard?
Ya, jika file TXT memiliki pemisah yang jelas antar kontak dan label kolom yang konsisten. Tanpa penanda tersebut, beberapa orang mungkin digabungkan menjadi satu kontak atau satu orang mungkin terbagi menjadi beberapa kontak.
Mengapa nama atau nomor telepon salah setelah TXT dikonversi ke vCard?
TXT tidak memiliki struktur daftar kontak universal, sehingga koma, tab, jeda baris, header, dan format nomor telepon dapat ditafsirkan secara keliru. Label dan delimiter yang konsisten penting untuk pemetaan kolom yang akurat.
Apakah konversi TXT ke vCard akan mempertahankan nama beraksen dan karakter khusus?
Biasanya, jika encoding teks sumber dan encoding karakter vCard ditangani dengan benar. Ketidakcocokan dapat menghasilkan aksen atau simbol lain yang berantakan, dan kompatibilitas juga bergantung pada versi vCard yang didukung oleh buku alamat.