Создать двоичный файл, содержащий записи следующей структуры для хранения информации об авиарейсе - C#
Формулировка задачи:
Создать двоичный файл, содержащий записи следующей структуры для хранения информации об авиарейсе:
Название пункта назначения рейса
Номер рейса
Тип самолета
Время в пути
Для заданного типа самолета и времени в пути - все номера рейсов и пункты назначения, для которых время в пути превышает заданное. Перечислением задать пункты назначения.
Вот всё, что пока написала, дальше не знаю как помогите пожалуйста доделать))):
namespace ConsoleApplication10 { class Program { enum Nazna4enie : byte { Moskow = 0, Piter = 1, Minsk = 2 } struct Samolet { public int Nomer; public string Type; public int Vremya; public void Write(BinaryWriter Samolet) { Samolet.Write(Nomer); Samolet.Write(Type); Samolet.Write(Vremya); } public void Read(BinaryReader Samolet) { Nomer = Samolet.ReadInt32(); Type = Samolet.ReadString(); Vremya = Samolet.ReadInt32(); } } static void Main(string[] args) { BinaryWriter stream = new BinaryWriter(File.Create("test.bin")); Samolet sam; for (int i = 0; i < 2; i++) { string stroka; Console.WriteLine("Введите строчку"); stroka = Convert.ToString(Console.ReadLine()); char razdel = ' '; string[] mas1 = stroka.Split(razdel); sam.Nomer = Convert.ToInt32(mas1[1]); sam.Type = mas1[0]; sam.Vremya = Convert.ToInt32(mas1[2]); stream.Write(sam.Nomer); stream.Write(sam.Type); stream.Write(sam.Vremya); sam.Write(stream); } stream.Close(); BinaryReader stream2 = new BinaryReader(File.Open("test.bin", FileMode.Open)); for (int i = 0; i < 2; i++) { sam.Nomer = 1; sam.Type = ""; sam.Vremya = 1; sam.Read(stream2); } } } }
Ну что поможет кто нибудь мне?
Решение задачи: «Создать двоичный файл, содержащий записи следующей структуры для хранения информации об авиарейсе»
textual
Листинг программы
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; namespace Oksana_C { class Program { static void Main(string[] args) { List<Fly> list = new List<Fly>(){new Fly(1,"One",10,PointOfD.Minsk), new Fly(2,"Two",20,PointOfD.Moscow), new Fly(3,"Three",25,PointOfD.St_Petersberg), new Fly(4,"Four",23,PointOfD.Minsk)}; //Вывод данных структуры с временем в пути >20 foreach (Fly f in list) { if (f.TimeToFly > 20) Console.WriteLine(f.ToString()); } Console.Read(); } //Метод для записи в файл static void WriteData() { Fly F1 = new Fly(125, "My Fly", 2200, PointOfD.Moscow); FileStream fs = new FileStream(@"C:\123.bin", FileMode.Create); BinaryWriter bw = new BinaryWriter(fs); bw.Write(F1.FlyNumber); bw.Write(F1.FlyType); bw.Write(F1.pd); bw.Write(F1.TimeToFly); bw.Close(); fs.Close(); } //Метод для чтения из файла static void ReadData() { FileStream fs = new FileStream(@"C:\123.bin", FileMode.Open); BinaryReader br = new BinaryReader(fs); int Number = br.ReadInt32(); string Type = br.ReadString(); string PointOD = br.ReadString(); int TimeTo = br.ReadInt32(); br.Close(); fs.Close(); } } enum PointOfD:byte { Moscow=0, St_Petersberg=1, Minsk=2 } struct Fly { public int FlyNumber { get; private set; } public string FlyType { get; private set; } public int TimeToFly { get; private set; } public string pd { get; private set; } public Fly(int FN, string FT, int TTF,PointOfD PoD):this() { FlyNumber = FN; FlyType = FT; TimeToFly = TTF; pd = PoD.ToString(); } public override string ToString() { return string.Format("Номер рейса: {0},тип самолета: {1}, время в пути: {2}, пункт назначения: {3}", FlyNumber, FlyType, TimeToFly, pd); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д