Exemple #1
0
 /// <summary>
 /// Default constructor.
 /// </summary>
 /// <param name="card">Owner card.</param>
 /// <param name="name">Item name.</param>
 /// <param name="parameters">Item parameters.</param>
 /// <param name="value">Item encoded value value.</param>
 internal Item(vCard card,string name,string parameters,string value)
 {
     m_pCard      = card;
     m_Name       = name;
     m_Parameters = parameters;
     m_Value      = value;
 }
Exemple #2
0
        /// <summary>
        /// Default constructor.
        /// </summary>
        /// <param name="owner">Owner vCard.</param>
        internal PhoneNumberCollection(vCard owner)
        {
            m_pOwner      = owner;
            m_pCollection = new List<PhoneNumber>();

            foreach(Item item in owner.Items.Get("TEL")){
                m_pCollection.Add(PhoneNumber.Parse(item));
            }
        }
 /// <summary>
 /// Default constructor.
 /// </summary>
 /// <param name="owner">Owner vCard.</param>
 internal DeliveryAddressCollection(vCard owner)
 {
     m_pOwner      = owner;
     m_pCollection = new List<DeliveryAddress>();
                 
     foreach(Item item in owner.Items.Get("ADR")){
         m_pCollection.Add(DeliveryAddress.Parse(item));
     }
 }
 /// <summary>
 /// Default constructor.
 /// </summary>
 /// <param name="owner">Owner vCard.</param>
 internal EmailAddressCollection(vCard owner)
 {
     m_pOwner      = owner;
     m_pCollection = new List<EmailAddress>();
                 
     foreach(Item item in owner.Items.Get("EMAIL")){
         m_pCollection.Add(EmailAddress.Parse(item));
     }
 }
        /// <summary>
        /// Default constructor.
        /// </summary>
        /// <param name="card">Owner card.</param>
        internal ItemCollection(vCard card)
        {
            m_pCard = card;

            m_pItems = new List<Item>();
        }
Exemple #6
0
 /// <summary>
 /// Parses multiple vCards from the specified file (Apple Address Book and Gmail exports)
 /// </summary>
 /// <param name="file">vCard file with path.</param>
 public static List<vCard> ParseMultiple(string file) {
     List<vCard> vCards = new List<vCard>();
     List<string> fileStrings = new List<string>();
     string line = "";
     bool hasBeginTag = false;
     using (FileStream fs = File.OpenRead(file)) {
         TextReader r = new StreamReader(fs, System.Text.Encoding.Default);          
         while (line != null) {
             line = r.ReadLine();
             if (line != null && line.ToUpper() == "BEGIN:VCARD") {
                 hasBeginTag = true;
             }
             if (hasBeginTag) {
                 fileStrings.Add(line);
                 if (line != null && line.ToUpper() == "END:VCARD") {
                     // on END line process the Vcard, reinitialize, and will repeat the same thing for any others.
                     vCard singleVcard = new vCard();
                     singleVcard.ParseStrings(fileStrings);
                     vCards.Add(singleVcard);
                     fileStrings.Clear();
                     hasBeginTag = false;
                 }
             }
         }
     }
     return vCards;
 }