static void Main(string[] args) { while (true) { Console.WriteLine("╔════════════╤══════════════════════════════╗"); Console.WriteLine(" Hot key │ Function "); Console.WriteLine("╠════════════╪══════════════════════════════╣"); Console.WriteLine(" A │ Add new concert "); Console.WriteLine("╠════════════╪══════════════════════════════╣"); Console.WriteLine(" C │ Change concert "); Console.WriteLine("╠════════════╪══════════════════════════════╣"); Console.WriteLine(" D │ Delete concert "); Console.WriteLine("╠════════════╪══════════════════════════════╣"); Console.WriteLine(" T │ Show all concerts "); Console.WriteLine("╠════════════╪══════════════════════════════╣"); Console.WriteLine(" H │ All listeners "); Console.WriteLine("╠════════════╪══════════════════════════════╣"); Console.WriteLine(" P │ Lenth of surname"); Console.WriteLine("╠════════════╪══════════════════════════════╣"); Console.WriteLine(" M │ Day with the least listeners"); Console.WriteLine("╠════════════╪══════════════════════════════╣"); Console.WriteLine(" Space │ Clear console "); Console.WriteLine("╠════════════╪══════════════════════════════╣"); Console.WriteLine(" Esc │ Exit program "); Console.WriteLine("╚════════════╧══════════════════════════════╝"); if (!File.Exists(FileName)) { File.Create(FileName).Close(); } var Writer = JsonConvert.DeserializeObject <List <Concert> >(File.ReadAllText(FilePath)); Concert cp = new Concert(); switch (Console.ReadKey().Key) { case ConsoleKey.A: if (Writer == null) { Writer = new List <Concert>(); Writer.Add(CreateNewDay()); } else { Writer.Add(CreateNewDay()); } break; case ConsoleKey.C: ChangeData(Writer); break; case ConsoleKey.D: DelteDay(Writer); break; case ConsoleKey.T: ShowAll(Writer); break; case ConsoleKey.Escape: Environment.Exit(0); break; case ConsoleKey.H: cp.ListenersCount(Writer); break; case ConsoleKey.P: SurnLen(Writer); break; case ConsoleKey.M: cp.DayWithLow(Writer); break; case ConsoleKey.Spacebar: Console.Clear(); break; } string serialize = JsonConvert.SerializeObject(Writer, Formatting.Indented); if (serialize.Count() > 1) { if (!File.Exists(FileName)) { File.Create(FileName).Close(); } File.WriteAllText(FilePath, serialize, Encoding.UTF8); } } }