Пример #1
0
		public static ActiveUp.Net.Groupware.vCard.vCard Parse(string data)
		{
			ActiveUp.Net.Groupware.vCard.vCard card = new ActiveUp.Net.Groupware.vCard.vCard();
			data = ActiveUp.Net.Groupware.vCard.Parser.Unfold(data);
			data = data.Replace("\\,","²²²COMMA²²²");
			data = data.Replace("\\;","²²²SEMICOLON²²²");
			foreach(string line in System.Text.RegularExpressions.Regex.Split(data,"\r\n"))
			{
				string fulltype = line.Split(':')[0];
				string type = fulltype.Split(';')[0].ToUpper();
				switch(type)
				{
					case "NAME": Parser.SetDisplayName(card,line);
						break;
					case "FN": Parser.SetFullName(card,line);
						break;
					case "N": Parser.SetName(card,line);
						break;
					case "NICKNAME": Parser.SetNickName(card,line);
						break;
					case "SOURCE": Parser.SetSource(card,line);
						break;
					case "MAILER": Parser.SetMailer(card,line);
						break;
					case "TZ": Parser.SetTimeZone(card,line);
						break;
					case "TITLE": Parser.SetTitle(card,line);
						break;
					case "ROLE": Parser.SetRole(card,line);
						break;
					case "NOTE": Parser.SetNote(card,line);
						break;
					case "PRODID": Parser.SetGeneratorId(card,line);
						break;
					case "SORT-STRING": Parser.SetSortText(card,line);
						break;
					case "UID": Parser.SetUid(card,line);
						break;
					case "URL": Parser.SetUrl(card,line);
						break;
					case "VERSION": Parser.SetVersion(card,line);
						break;
					case "CLASS": Parser.SetAccessClass(card,line);
						break;
					case "ADR": Parser.AddAddress(card,line);
						break;
					case "TEL": Parser.AddTelephoneNumber(card,line);
						break;
					case "LABEL": Parser.AddLabel(card,line);
						break;
					case "EMAIL": Parser.AddEmail(card,line);
						break;
					case "BDAY": Parser.SetBirthday(card,line);
						break;
					case "REV": Parser.SetRevision(card,line);
						break;
					case "ORG": Parser.SetOrganization(card,line);
						break;
					case "CATEGORIES": Parser.SetCategories(card,line);
						break;
					case "PHOTO": Parser.SetPhoto(card,line);
						break;
					case "SOUND": Parser.SetSound(card,line);
						break;
					case "LOGO": Parser.SetLogo(card,line);
						break;
					case "KEY": Parser.SetKey(card,line);
						break;
					case "GEO": Parser.SetGeo(card,line);
						break;
				}
			}
			return card;
		}
Пример #2
0
        public static ActiveUp.Net.Groupware.vCard.vCard Parse(string data)
        {
            ActiveUp.Net.Groupware.vCard.vCard card = new ActiveUp.Net.Groupware.vCard.vCard();
            data = ActiveUp.Net.Groupware.vCard.Parser.Unfold(data);
            data = data.Replace("\\,", "²²²COMMA²²²");
            data = data.Replace("\\;", "²²²SEMICOLON²²²");
            foreach (string line in System.Text.RegularExpressions.Regex.Split(data, "\r\n"))
            {
                string fulltype = line.Split(':')[0];
                string type     = fulltype.Split(';')[0].ToUpper();
                switch (type)
                {
                case "NAME": Parser.SetDisplayName(card, line);
                    break;

                case "FN": Parser.SetFullName(card, line);
                    break;

                case "N": Parser.SetName(card, line);
                    break;

                case "NICKNAME": Parser.SetNickName(card, line);
                    break;

                case "SOURCE": Parser.SetSource(card, line);
                    break;

                case "MAILER": Parser.SetMailer(card, line);
                    break;

                case "TZ": Parser.SetTimeZone(card, line);
                    break;

                case "TITLE": Parser.SetTitle(card, line);
                    break;

                case "ROLE": Parser.SetRole(card, line);
                    break;

                case "NOTE": Parser.SetNote(card, line);
                    break;

                case "PRODID": Parser.SetGeneratorId(card, line);
                    break;

                case "SORT-STRING": Parser.SetSortText(card, line);
                    break;

                case "UID": Parser.SetUid(card, line);
                    break;

                case "URL": Parser.SetUrl(card, line);
                    break;

                case "VERSION": Parser.SetVersion(card, line);
                    break;

                case "CLASS": Parser.SetAccessClass(card, line);
                    break;

                case "ADR": Parser.AddAddress(card, line);
                    break;

                case "TEL": Parser.AddTelephoneNumber(card, line);
                    break;

                case "LABEL": Parser.AddLabel(card, line);
                    break;

                case "EMAIL": Parser.AddEmail(card, line);
                    break;

                case "BDAY": Parser.SetBirthday(card, line);
                    break;

                case "REV": Parser.SetRevision(card, line);
                    break;

                case "ORG": Parser.SetOrganization(card, line);
                    break;

                case "CATEGORIES": Parser.SetCategories(card, line);
                    break;

                case "PHOTO": Parser.SetPhoto(card, line);
                    break;

                case "SOUND": Parser.SetSound(card, line);
                    break;

                case "LOGO": Parser.SetLogo(card, line);
                    break;

                case "KEY": Parser.SetKey(card, line);
                    break;

                case "GEO": Parser.SetGeo(card, line);
                    break;
                }
            }
            return(card);
        }