using System; using System.Linq; namespace WinFormsApp2 { internal enum Activity { Working, Studying, Unemployed } internal struct Human { public const string FIELDS_DELIMITER = ","; public static string HumansDelimiter = Environment.NewLine; public string FullName { get; } public DateTime Birth { get; } public Activity Activity { get; } public Human(string fullName, DateTime birth, Activity activity) { FullName = fullName; Birth = birth; Activity = activity; } public override string ToString() { return $"{FullName} {Birth.ToShortDateString()} {Activity}"; } public static Human[] ParseMany(string text) { return text .Split(new string[] { HumansDelimiter }, StringSplitOptions.RemoveEmptyEntries) .Select(t => Parse(t)) .ToArray(); } public static Human Parse(string text) { string[] fields = text.Split(new string[] { FIELDS_DELIMITER }, StringSplitOptions.RemoveEmptyEntries); string fullName = fields[0]; DateTime birth = DateTime.Parse(fields[1]); Activity activity = (Activity)Enum.Parse(typeof(Activity), fields[2]); return new Human(fullName, birth, activity); } } }