public int CompareTo(ResearchTeam other) { if (other == null) { throw new ArgumentException("Wrong argument!"); } return(Theme.CompareTo(other.Theme)); }
public static bool Save(string filename, ResearchTeam rt) { try { BinaryFormatter formatter = new BinaryFormatter(); using (FileStream fs = new FileStream(filename, FileMode.OpenOrCreate)) { formatter.Serialize(fs, rt); } } catch (IOException ex) { Console.WriteLine(ex.StackTrace); return(false); } return(true); }
public void InsertAt(int j, ResearchTeam rt) { if (SomeResearchTeams.Count < j) { SomeResearchTeams[SomeResearchTeams.Count - 1] = rt; ResearchTeamAdded(SomeResearchTeams[SomeResearchTeams.Count - 1], new TeamListEventArgs(this.CollectionName, "Last element added", SomeResearchTeams.Count - 1)); } for (int i = 0; i < SomeResearchTeams.Count; i++) { if (i - 1 == j) { SomeResearchTeams.Insert(i, rt); ResearchTeamInserted(SomeResearchTeams[i], new TeamListEventArgs(this.CollectionName, "Element was added", j)); } } }
public static bool Load(string filename, ResearchTeam rt) { try { BinaryFormatter formatter = new BinaryFormatter(); using (FileStream fs = new FileStream(filename, FileMode.Open)) { ResearchTeam tmp = (ResearchTeam)formatter.Deserialize(fs); rt.Name = tmp.Name; rt.Organisation = tmp.Organisation; rt.RegistrationNumber = tmp.RegistrationNumber; } } catch (IOException ex) { Console.WriteLine(ex.StackTrace); return(false); } return(true); }
static void Main(string[] args) { /* * ResearchTeamCollection collection1 = new ResearchTeamCollection(); * ResearchTeamCollection collection2 = new ResearchTeamCollection(); * TeamsJournal journal1 = new TeamsJournal(); * TeamsJournal journal2 = new TeamsJournal(); * * collection1.ResearchTeamAdded += journal1.TeamEventHandler; * collection1.ResearchTeamInserted += journal1.TeamEventHandler; * * collection1.ResearchTeamAdded += journal2.TeamEventHandler; * collection1.ResearchTeamInserted += journal2.TeamEventHandler; * * collection2.ResearchTeamAdded += journal2.TeamEventHandler; * collection2.ResearchTeamInserted += journal2.TeamEventHandler; * * collection1.AddDefaults(); * collection1.AddResearchTeams(new ResearchTeam("Chaos","IRE",1,TimeFrame.Year)); * collection2.AddDefaults(); * collection2.InsertAt(1, new ResearchTeam("Another", "IRE", 1, TimeFrame.Year)); * collection2.InsertAt(6, new ResearchTeam("Another", "IRE", 1, TimeFrame.Year)); * * Console.WriteLine(journal1.ToString()); * Console.WriteLine(); * Console.WriteLine(journal2.ToString()); */ // задание 1 ResearchTeam researchTeam = new ResearchTeam(); ResearchTeam researchTeam1 = researchTeam.DeepCopy(); Console.WriteLine(researchTeam.ToString()); Console.WriteLine(researchTeam1.ToString()); // задание 2 Console.Write("Введите имя файла: "); string filename = Console.ReadLine(); if (File.Exists(filename)) { researchTeam.Load(filename); } else { Console.WriteLine("Такого файла не существует"); FileInfo file = new FileInfo(filename); StreamWriter sw = file.CreateText(); } // задание 3 Console.WriteLine(researchTeam.ToString()); // задание 4 researchTeam.AddFromConsole(); researchTeam.Save(filename); Console.WriteLine(researchTeam.ToString()); // задание 5 ResearchTeam.Load(filename, researchTeam); researchTeam.AddFromConsole(); ResearchTeam.Save(filename, researchTeam); // задание 6 Console.WriteLine(researchTeam.ToString()); Console.ReadKey(); }