using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; namespace add_or__search_in_io { class Program { struct details { public DateTime date; public string appointment; public string day; public string time; }; private details testdetails; static FileStream f; StreamReader r; StreamWriter w; public void getdata() { string duedate; Console.WriteLine("Enter date in dd/mm/yyyy format"); duedate = Console.ReadLine(); if ((duedate.Length) != 10) { Console.WriteLine("Incorrect format"); Console.ReadLine(); Environment.Exit(0); } if ((duedate.Substring(2, 1) != "/") || (duedate.Substring(5, 1) != "/")) { Console.WriteLine("Invalid format"); Console.ReadLine(); Environment.Exit(0); } /* try { testdetails.date = Convert.ToDateTime(duedate); Environment.Exit(0); } catch { Console.WriteLine("Invalid date"); Environment.Exit(0); }*/ testdetails.date = Convert.ToDateTime(duedate); testdetails.day = Convert.ToString(testdetails.date.DayOfWeek); Console.WriteLine("Appointment with "); testdetails.appointment = Console.ReadLine(); Console.WriteLine("Appointment time"); testdetails.time = Console.ReadLine(); if (testdetails.time.Length != 5) { Console.WriteLine("Incorrect format of time"); // Environment.Exit(0); } if (testdetails.time.Substring(2, 1) != ":") { Console.WriteLine("Incorrect format"); // Environment.Exit(0); } f = new FileStream("mytext.txt", FileMode.Append, FileAccess.Write); w = new StreamWriter(f); w.Write("Date : "); w.Write(testdetails.date.ToShortDateString()); w.Write("?"); w.Write("Day :"); w.Write(testdetails.day); w.Write("?"); w.Write("Name :"); w.Write(testdetails.appointment); w.Write("?"); w.Write("Time :"); w.Write(testdetails.time); w.WriteLine("?"); w.Flush(); w.Close(); } public void display() { string str; f = new FileStream("mytext.txt", FileMode.Open,FileAccess.Read); r = new StreamReader(f); Console.Clear(); int pos = 0; while ((str = r.ReadLine()) != null) { while (true) { pos = str.IndexOf("?"); if (pos == -1) break; Console.WriteLine(str.Substring(0,pos)); str = str.Substring(pos + 1); } pos = 0; } r.Close(); } public void search() { string str, chkstr1, chkstr2; DateTime dd; int pos; f = new FileStream("mytext.txt",FileMode.Open, FileAccess.Read); r = new StreamReader(f); Console.WriteLine("Ente date in dd/mm/yy format for search"); dd = Convert.ToDateTime(Console.ReadLine()); while ((str = r.ReadLine()) != null) { chkstr1 = "Date : " + dd.ToShortDateString(); pos = str.IndexOf("?"); chkstr2 = str.Substring(0, pos); if (chkstr1.CompareTo(chkstr2) == 0) { while (true) { pos = str.IndexOf("?"); if (pos == -1) break; Console.WriteLine(str.Substring(0, pos)); str = str.Substring(pos + 1); } pos = 0; } } r.Close(); } static void Main(string[] args) { Program p = new Program(); int ch = 0; Console.Clear(); while (ch != 4) { Console.WriteLine("1, Add appointment"); Console.WriteLine("2, View appointment"); Console.WriteLine("3, search"); Console.WriteLine("4, exit"); Console.WriteLine("5, enter choice"); ch = Convert.ToInt32(Console.ReadLine()); switch(ch) { case 1: { Console.Clear(); p.getdata(); Console.Clear(); }break; case 2: { Console.Clear(); p.display(); Console.ReadLine(); Console.Clear(); }break; case 3: { Console.Clear(); p.search(); Console.ReadLine(); Console.Clear(); }break; case 4: { return; } default: {