public List <Transport> Add(Transport p) { pozhar.Add(p); return(pozhar); }
public void IAmPrinting(Transport p) { Console.WriteLine("Type: " + p.GetType()); Console.WriteLine(p.ToString()); }
static void Main(string[] args) { Transport Calcatinge = new Automobil("Calcatinge", "Moldovanin", 0, 100, 5); Transport UAZ = new Automobil("Nissan", "GTR", 228, 2, 240) as Automobil; // ссылка на абстрактный класс Printer car = new Printer(); Transport BelAZ = new Automobil("BELAZ", "POTATO", 1488, 13, 70) as Transport; // ссылка на абстрактный класс Poezd Strela = new Poezd("Strela", "bistraya", 1337, 66, 140); Vagon Dima = new Vagon("Dima", "СВ", 228, 1337, 1488); Transport[] arr = new Transport[5]; arr[0] = Calcatinge; arr[1] = Dima; arr[2] = Strela; arr[3] = BelAZ; arr[4] = UAZ; Container q = new Container(); q.pozhar = new List <Transport>(); q.Add(Calcatinge); q.Add(UAZ); q.Add(BelAZ); Controller cont = new Controller(); BinaryFormatter formatter = new BinaryFormatter(); // получаем поток, куда будем записывать сериализованный объект using (FileStream fs = new FileStream("people.dat", FileMode.OpenOrCreate)) { formatter.Serialize(fs, Calcatinge); Console.WriteLine("Бинарная сериализация:\nОбъект успешно сериализован"); } using (FileStream fs = new FileStream("people.dat", FileMode.OpenOrCreate)) { Transport newTransport = (Transport)formatter.Deserialize(fs); Console.WriteLine("Бинарная десериализация:\nОбъект успешно десериализован"); Console.WriteLine("Имя: {0}\n" + "Цена: {1}\n" + "Pасход топлива: {2}\n" + "Cкорость: {3}\n", newTransport.Name, newTransport.Price, newTransport.Oil, newTransport.Speed); } Console.WriteLine("=================================="); SoapFormatter formatter1 = new SoapFormatter(); // получаем поток, куда будем записывать сериализованный объект using (FileStream fs = new FileStream("people.soap", FileMode.OpenOrCreate)) { formatter.Serialize(fs, Strela); Console.WriteLine("SOAP сериализация:\nОбъект сериализован"); } // десериализация using (FileStream fs = new FileStream("people.soap", FileMode.OpenOrCreate)) { Transport newTransport = (Transport)formatter.Deserialize(fs); Console.WriteLine("SOAP десериализация:\nОбъект успешно десериализован"); Console.WriteLine("Имя: {0}\n" + "Цена: {1}\n" + "Pасход топлива: {2}\n" + "Cкорость: {3}\n", newTransport.Name, newTransport.Price, newTransport.Oil, newTransport.Speed); } Console.WriteLine("=================================="); XmlSerializer formatter2 = new XmlSerializer(typeof(Transport)); using (FileStream fs = new FileStream("persons.xml", FileMode.OpenOrCreate)) { formatter.Serialize(fs, Strela); Console.WriteLine("XML сериализация:\nОбъект сериализован"); } using (FileStream fs = new FileStream("persons.xml", FileMode.OpenOrCreate)) { Transport newTransport = (Transport)formatter.Deserialize(fs); Console.WriteLine("XML десериализация:\nОбъект успешно десериализован"); Console.WriteLine("Имя: {0}\n" + "Цена: {1}\n" + "Pасход топлива: {2}\n" + "Cкорость: {3}\n", newTransport.Name, newTransport.Price, newTransport.Oil, newTransport.Speed); } Console.WriteLine("=================================="); DataContractJsonSerializer jsonFormatter = new DataContractJsonSerializer(typeof(Automobil)); using (FileStream fs = new FileStream("people.json", FileMode.OpenOrCreate)) { jsonFormatter.WriteObject(fs, BelAZ); Console.WriteLine("JSON сериализация:\nОбъект сериализован"); } using (FileStream fs = new FileStream("people.json", FileMode.OpenOrCreate)) { Automobil newpeople = (Automobil)jsonFormatter.ReadObject(fs); Console.WriteLine("JSON десериализация:\nОбъект успешно десериализован"); Console.WriteLine("Имя: {0}\n" + "Цена: {1}\n" + "Pасход топлива: {2}\n" + "Cкорость: {3}\n", newpeople.Name, newpeople.Price, newpeople.Oil, newpeople.Speed); } Console.WriteLine("=================================="); using (FileStream fs = new FileStream("people.dat", FileMode.OpenOrCreate)) { formatter.Serialize(fs, arr); Console.WriteLine("Сериализация массива:\nОбъект успешно сериализован"); } using (FileStream fs = new FileStream("people.dat", FileMode.OpenOrCreate)) { Transport[] newTransport = (Transport[])formatter.Deserialize(fs); Console.WriteLine("Десериализация массива:\nОбъект успешно десериализован"); foreach (Transport p in newTransport) { Console.WriteLine("Имя: {0}\n" + "Цена: {1}\n" + "Pасход топлива: {2}\n" + "Cкорость: {3}\n", p.Name, p.Price, p.Oil, p.Speed); } } Console.WriteLine("Залазим в XML-документ:\n"); XmlDocument xDoc = new XmlDocument(); xDoc.Load("test.xml"); XmlElement xRoot = xDoc.DocumentElement; // выбор всех дочерних узлов XmlNodeList childnodes = xRoot.SelectNodes("*"); foreach (XmlNode n in childnodes) { Console.WriteLine(n.OuterXml); } Console.WriteLine("Link to XML:\n"); XDocument xdoc = XDocument.Load("info.xml"); foreach (XElement phoneElement in xdoc.Element("phones").Elements("phone")) { XAttribute nameAttribute = phoneElement.Attribute("name"); XElement companyElement = phoneElement.Element("company"); XElement priceElement = phoneElement.Element("price"); if (nameAttribute != null && companyElement != null && priceElement != null) { Console.WriteLine("Смартфон: {0}", nameAttribute.Value); Console.WriteLine("Компания: {0}", companyElement.Value); Console.WriteLine("Цена: {0}", priceElement.Value); } Console.WriteLine(); } Console.Read(); }