2017-12-19 11 views
0

.vcfまたはCNContactをvcf形式の文字列から作成する方法はありますか?vcf文字列からvcfまたはCNContactを作成する

例文字列:

"BEGIN:VCARD\r\nVERSION:2.1\r\nN;CHARSET=utf-8:More;Sanjay LaxiTianrae;;;\r\nFN;CHARSET=utf-8:Sagar LaxiTianrae Morey\r\nTITLE;CHARSET=utf-8:Ei : anch Manager (Sales)\r\nORG;CHARSET=utf-8:LIFE INSURANCE CORPORATION . OF INDIA;Assi\r\nTEL;CELL;CHARSET=utf-8:002225984641\r\nTEL;CELL;CHARSET=utf-8:9665379999\r\nEMAIL;WORK;CHARSET=utf-8:[email protected]\r\nADR;WORK;CHARSET=utf-8:;;;;;;\r\nX-IS-ANGLE;CHARSET=utf-8:90\r\nEND:VCARD\r\n" 
+1

'.vcf':はい、そのままファイルとして保存してください。 'CNContact'については、' CNContactVCardSerialization'をチェックしてください。 – Larme

+0

@Larmeしかし、私は 'CNContact'を持っていません。私はその文字列しか持っていない。 – Nitesh

+0

'CNContactVCardSerialization'の' contacts(with data:) 'メソッドは' CNContact'の配列を返します。単に連絡先を許可する:[CNContact] = CNContactVCardSerialization.contacts(データ:myVCFString.data(.utf8を使用)) '(追加するtry/catchがあります)。そして、https://stackoverflow.com/questions/24097826/read-and-write-data-from-text-fileを実行します。「file.txt」の代わりに「myContact.vcf」を実行します。 – Larme

答えて

0
var usersContact = [CNContact]() 
    do { 
     try usersContact = CNContactVCardSerialization.contacts(with: "VCF STRING HERE".data(using: .utf8)!) 
     if let user = usersContact.first{ 
      user.givenName 
     } 
    } catch { 
     print("Error \(error)") 
    } 

// For .vcf data 
      let contactsData = try! CNContactVCardSerialization.data(with: usersContact) 

これは、私がCNContactにそれを変換する方法です。

@Larmeに感謝します。

関連する問題