यह वास्तव में एक .vcf फ़ाइल उत्पन्न करना काफी आसान है। VCF format पर एक नज़र डालें - यह एक साधारण पाठ फ़ाइल है। आपको बस इतना करना है कि वीसीएफ फ़ील्ड का उपयोग करके टेक्स्ट फ़ाइल बनाएं और इसमें जानकारी लिखें। आप कुछ इस तरह से खत्म करेंगे:
Person p = getPerson();
File vcfFile = new File(this.getExternalFilesDir(null), "generated.vcf");
FileWriter fw = new FileWriter(vcfFile);
fw.write("BEGIN:VCARD\r\n");
fw.write("VERSION:3.0\r\n");
fw.write("N:" + p.getSurname() + ";" + p.getFirstName() + "\r\n");
fw.write("FN:" + p.getFirstName() + " " + p.getSurname() + "\r\n");
fw.write("ORG:" + p.getCompanyName() + "\r\n");
fw.write("TITLE:" + p.getTitle() + "\r\n");
fw.write("TEL;TYPE=WORK,VOICE:" + p.getWorkPhone() + "\r\n");
fw.write("TEL;TYPE=HOME,VOICE:" + p.getHomePhone() + "\r\n");
fw.write("ADR;TYPE=WORK:;;" + p.getStreet() + ";" + p.getCity() + ";" + p.getState() + ";" + p.getPostcode() + ";" + p.getCountry() + "\r\n");
fw.write("EMAIL;TYPE=PREF,INTERNET:" + p.getEmailAddress() + "\r\n");
fw.write("END:VCARD\r\n");
fw.close();
Intent i = new Intent();
i.setAction(android.content.Intent.ACTION_VIEW);
i.setDataAndType(Uri.fromFile(vcfFile), "text/x-vcard");
startActivity(i);
(ध्यान दें कि यह कोड एक गतिविधि के अंदर रखा जा रहा है यह एक गतिविधि में नहीं है, तो Context
का एक उदाहरण के साथ getExternalFilesDir
के सामने this
बदलें।।)
आपके पास आवश्यकतानुसार कम फ़ील्ड हो सकते हैं। यदि आपके पास ,
, ;
या \
फ़ील्ड मानों में वर्ण हैं, तो उन्हें \
से बचने की आवश्यकता है; एक न्यूलाइन चरित्र को एक मान में डालने के लिए, फ़ाइल में \\n
लिखें (यानी फ़ाइल में \n
होना चाहिए, दूसरा स्लैश नई लाइन में स्लैश से बचने के लिए है)।
यह कोड काफी कच्चा है, लेकिन इसे आपको प्रारंभ करना चाहिए। फिर, वीसीएफ के प्रारूप पर एक नज़र डालें और वहां से जाएं।
अद्यतन: मेरे मूल उत्तरों में गलतियों को इंगित करने के लिए @ माइकल के लिए धन्यवाद।
स्रोत
2012-12-04 12:15:52
आपकी समस्या को विस्तार से बताएं। वस्तु क्या है। क्या आपने संपर्क सूची प्राप्त की है? क्या आपने वीकार्ड बनाया है? –
@ साहिल महाजन एमजे मुझे लगता है कि ओपी का मतलब है कि उसके पास कुछ व्यक्ति की जानकारी के साथ _an_ वस्तु है और वह इसमें से एक वीसीएफ बनाना चाहता है; इस जानकारी के फोन के संपर्कों से कोई लेना देना नहीं है। –