public void AddOrAccessAddressBook()
        {
            // To get the name of the addressbook
            AddressBook addressBook = GetAddressBook();

            // Returns no record found if address book is empty
            if (addressBook == null)
            {
                Console.WriteLine("Action aborted");
                return;
            }
            //select the action to be performed in address book
            while (true)
            {
                Console.WriteLine("\nSelect from below to work on Address book {0}", addressBook.nameOfAddressBook);
                Console.WriteLine("\nType\n\nAdd - To add a contact \nUpdate- To update a contact\nView - To view all contacts\nRemove - To remove a contact and \nSearch- To search to get contact deatails\nE - To exit\n ");

                switch (Console.ReadLine().ToLower())
                {
                case ADD_CONTACT:

                    addressBook.AddContact();
                    break;

                case UPDATE_CONTACT:

                    addressBook.UpdateContact();
                    break;

                case SEARCH_CONTACT:

                    addressBook.DisplayContactDetails();
                    break;

                case REMOVE_CONTACT:

                    addressBook.RemoveContact();
                    break;

                case GET_ALL_CONTACTS:

                    addressBook.GetAllContacts();
                    break;

                default:

                    Console.WriteLine("\nInvalid option. Exiting address book");
                    return;
                }
                // Ask the user to continue in same address book or to exit
                Console.WriteLine("\nType y to continue in same address Book or any other key to exit");
                // If not equal to y  then exit
                if (!(Console.ReadLine().ToLower() == "y"))
                {
                    logger.Debug("User exited the address book " + nameOfAddressBook);
                    return;
                }
            }
        }
예제 #2
0
        public static void FillAddressBook(AddressBook addressBook)
        {
            int choice;

            do
            {
                Console.WriteLine("\nMenu : \n1.Add Contact \n2.Edit Contact \n3.Delete Contact\n0.Exit");
                choice = Convert.ToInt32(Console.ReadLine());
                switch (choice)
                {
                case 1:
                    Contact contact = new Contact();
                    SetContactDetails(contact);
                    addressBook.AddContact(contact);
                    break;

                case 2:
                    Console.WriteLine("Enter the Phone Number of Contact you wish to Edit");
                    long phoneNumber = long.Parse(Console.ReadLine());
                    int  index       = addressBook.FindByPhoneNum(phoneNumber);
                    if (index == -1)
                    {
                        Console.WriteLine("No Contact Exists With Following Phone Number");
                        continue;
                    }
                    else
                    {
                        Contact contact2 = new Contact();
                        SetContactDetails(contact2);
                        addressBook.ContactList[index] = contact2;
                        Console.WriteLine("Contact Updated Successfully");
                    }
                    break;

                case 3:
                    Console.WriteLine("Enter the First Name of Contact you wish to delete");
                    string fname = Console.ReadLine();
                    int    idx   = addressBook.FindByFirstName(fname);
                    if (idx == -1)
                    {
                        Console.WriteLine("No Contact Exists with Following First Name");
                        continue;
                    }
                    else
                    {
                        addressBook.DeleteContact(idx);
                        Console.WriteLine("Contact Deleted Successfully");
                    }
                    break;
                }
            } while (choice != 0);
        }
        public void AddAddressBook()
        {
            try
            {
                AddressBook addressBook = GetAddressBook(); //get the name of the addressbook

                if (addressBook == null)                    //address book is empty
                {
                    Console.WriteLine("Address Book Empty");
                    return;
                }

                while (true)
                {
                    Console.WriteLine($"\n**** Welcome To {addressBook.nameOfAddressBook} Address Book System ****");

                    Console.Write("\n1.Add New contact" +
                                  "\n2.Display all contacts" +
                                  "\n3.Edit Record" +
                                  "\n4.Delete Records" +
                                  "\n5.Search Contact Records" +
                                  "\n6.Write Address Book System to txt File" +
                                  "\n7.Write Address Book System to CSV File" +
                                  "\n8.Write Address Book System to JSON File" +
                                  "\n9.Read Txt File" +
                                  "\n10.Read CSV File " +
                                  "\n11.Read JSON File " +
                                  "\n0.Exit\n " +
                                  "\nEnter Your Choice:- ");
                    int choice4 = Convert.ToInt32(Console.ReadLine());

                    switch (choice4)
                    {
                    case 1:
                        addressBook.AddContact();
                        break;

                    case 2:
                        addressBook.GetAllContacts();
                        break;

                    case 3:
                        addressBook.EditContact();
                        break;

                    case 4:
                        addressBook.RemoveContact();
                        break;

                    case 5:
                        addressBook.SearchContactDetails();
                        break;

                    case 6:
                        addressBook.WriteAddressBookToFile();
                        break;

                    case 7:
                        addressBook.WriteAddressBookToCsv();
                        break;

                    case 8:
                        addressBook.WriteAddressBookToJson();
                        break;

                    case 9:
                        addressBook.ReadAddressBookFromFile();
                        break;

                    case 10:
                        addressBook.ReadAddressBookFromCSV();
                        break;

                    case 11:
                        addressBook.ReadAddressBookFromJSON();
                        break;

                    case 0:
                        Console.WriteLine("Exiting Address Book");
                        return;
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
예제 #4
0
        static void Main(string[] args)
        {
            AddressBookBinder binder = new AddressBookBinder();

            Console.WriteLine("Welcome to Address Book Program");
            int result = 1;

            while (result == 1)
            {
                Console.WriteLine("Enter the name of the Address Book to be used");
                string      addrName = Console.ReadLine();
                AddressBook book     = new AddressBook();
                book.People = binder.AddAddrBook(addrName, book.People);
                int loop = 1;
                while (loop == 1)
                {
                    Console.WriteLine("\nSelect the option. \n1. Add new contact. \n2. Edit existing contact.\n3. Delete Contact \n4. Exit.");
                    int option = int.Parse(Console.ReadLine());
                    switch (option)
                    {
                    case 1:
                        Console.WriteLine("Enter the person details to be added in the address book");
                        Console.WriteLine("First Name");
                        string FirstName = Console.ReadLine();
                        Console.WriteLine("Last Name");
                        string LastName = Console.ReadLine();
                        Console.WriteLine("Address");
                        string Address = Console.ReadLine();
                        Console.WriteLine("City");
                        string City = Console.ReadLine();
                        Console.WriteLine("State");
                        string State = Console.ReadLine();
                        Console.WriteLine("Zip code");
                        string ZipCode = Console.ReadLine();
                        Console.WriteLine("Phone Number");
                        string PhoneNumber = Console.ReadLine();
                        Console.WriteLine("Email");
                        string Email = Console.ReadLine();
                        if (book.AddContact(FirstName, LastName, Address, City, State, ZipCode, PhoneNumber, Email))
                        {
                            Console.WriteLine("Contact added successfully");
                            break;
                        }
                        else
                        {
                            Console.WriteLine("Contact already exists");
                            break;
                        }

                    case 2:
                        Console.WriteLine("Enter the first name of the contact to be edited ");
                        string  name = Console.ReadLine();
                        Contact c    = book.FindContact(name);
                        if (c == null)
                        {
                            Console.WriteLine("Address for {0} count not be found.", name);
                            break;
                        }
                        else
                        {
                            Console.WriteLine("New Last Name");
                            c.LastName = Console.ReadLine();
                            Console.WriteLine("New Address");
                            c.Address = Console.ReadLine();
                            Console.WriteLine("New City");
                            c.City = Console.ReadLine();
                            Console.WriteLine("New State");
                            c.State = Console.ReadLine();
                            Console.WriteLine("New Zip code");
                            c.ZipCode = Console.ReadLine();
                            Console.WriteLine("New Phone Number");
                            c.PhoneNumber = Console.ReadLine();
                            Console.WriteLine("New Email");
                            c.Email = Console.ReadLine();
                            Console.WriteLine("Details updated for " + name);
                            break;
                        }

                    case 3:
                        Console.WriteLine("Enter the first name of the contact to be deleted ");
                        string name1 = Console.ReadLine();
                        if (book.RemoveContact(name1))
                        {
                            Console.WriteLine("Contact removed successfully");
                            break;
                        }
                        else
                        {
                            Console.WriteLine("Contact not found");
                            break;
                        }

                    case 4:
                        loop = 0;
                        break;
                    }
                }
                binder.Binder[addrName] = (book.People);
                Console.WriteLine("Do you want to enter an address book. \n1. yes \n2. no");
                result = int.Parse(Console.ReadLine());
            }
            foreach (var key in binder.Binder.Keys)
            {
                Console.WriteLine(key);
                foreach (Contact c in binder.Binder[key])
                {
                    Console.WriteLine(c.FirstName + "\t" + c.LastName + "\t" + c.Address + "\t" + c.City + "\t" + c.State + "\t" + c.ZipCode + "\t" + c.PhoneNumber + "\t" + c.Email);
                }
            }
        }
예제 #5
0
        /// <summary>
        /// Entery point
        /// </summary>
        /// <param name="args"></param>
        public static void Main(String[] args)
        {
            FileReadWrite.ReadContactsInCSVFile();
            // AddressBook obj = new AddressBook();//create object of AddressBook class


            Console.WriteLine("Welcome in Address book System");
            Console.WriteLine("*********************");
            //creating dictionary abDict
            Dictionary <string, AddressBook> abDict = new Dictionary <string, AddressBook>();//store Key ValuePair String is Key and AddressBook is value
            bool Result = true;

            Console.WriteLine("\nHow many address Book you want to create : ");
            int numAddressBooks = Convert.ToInt32(Console.ReadLine());//covert string into int with the help of ToInt32()

            for (int i = 1; i <= numAddressBooks; i++)
            {
                Console.WriteLine("Enter the name of address book " + i + ": ");
                string      bookName    = Console.ReadLine();
                AddressBook addressBook = new AddressBook(); //create obj
                abDict.Add(bookName, addressBook);           //Add bookName in dictionary
            }
            Console.WriteLine("\nYou have created following Address Books : ");
            foreach (var item in abDict) //var is used and it is store any data type value.
            {
                Console.WriteLine("{0}", item.Key);
            }
            while (Result)
            {
                Console.WriteLine("\nChoose option \n1.Add Contact \n2.Edit Contact \n3.Delete Contact  \n4.Display Contacts \n5.Search Person By City & State \n6.Display Contacts Same City \n7.Display Contacts Same State \n8.View number of contacts of city and state  \n9.Display Contacts in Sorted \n10.Display contact in sorted by state or by city \n11.File Operation \n12.Read Write Operation inCsv  \n13.Read Write Operation in Json file \n14.Exit");
                int choice = Convert.ToInt32(Console.ReadLine());
                switch (choice)
                {
                case 1:
                    Console.WriteLine("\nEnter Existing Address Book Name for adding contacts");
                    string contactName = Console.ReadLine();
                    if (abDict.ContainsKey(contactName))    //DEtermine whether the dictionary contains specified key
                    {
                        Console.WriteLine("\nEnter the number of contacts you want to add in address book");
                        int numberOfContacts = Convert.ToInt32(Console.ReadLine());    //taling i/p from user and convert into int with the help of ToInt32()
                        for (int i = 1; i <= numberOfContacts; i++)
                        {
                            addContactBook(abDict[contactName]);
                        }
                        abDict[contactName].displayPerson();
                    }
                    else
                    {
                        Console.WriteLine("No AddressBook exist with name {0}", contactName);
                    }
                    break;

                case 2:
                    Console.WriteLine("Enter Address Book Name for edit contact");
                    string editcontactName = Console.ReadLine();
                    if (abDict.ContainsKey(editcontactName))    //check whether the dictionary contains specified key
                    {
                        abDict[editcontactName].editPerson();
                        abDict[editcontactName].displayPerson();
                    }
                    else
                    {
                        Console.WriteLine("No Address book exist with name {0} ", editcontactName);
                    }
                    break;

                case 3:
                    Console.WriteLine("\nEnter Address Book Name for delete contact");
                    string deleteContact = Console.ReadLine();
                    if (abDict.ContainsKey(deleteContact))
                    {
                        abDict[deleteContact].deletePerson();
                        abDict[deleteContact].displayPerson();
                    }
                    else
                    {
                        Console.WriteLine("No Address book exist with name {0} ", deleteContact);
                    }
                    break;

                case 4:
                    Console.WriteLine("\nEnter Address Book Name for display contacts");
                    string displayContactsInAddressBook = Console.ReadLine();
                    abDict[displayContactsInAddressBook].displayPerson();
                    break;

                case 5:
                    Console.WriteLine("\n Enter address book name :");
                    string searchContacts = Console.ReadLine();
                    if (abDict.ContainsKey(searchContacts))
                    {
                        abDict[searchContacts].searchPerson();
                    }
                    else
                    {
                        Console.WriteLine("No Address book exist with name {0} ", searchContacts);
                    }
                    break;

                case 6:
                    Console.WriteLine("\n Enter address book name :");
                    string displayContacts = Console.ReadLine();
                    if (abDict.ContainsKey(displayContacts))
                    {
                        abDict[displayContacts].sameCityPerson();
                    }
                    else
                    {
                        Console.WriteLine("No Address book exist with name {0} ", displayContacts);
                    }
                    break;

                case 7:
                    Console.WriteLine("\n Enter address book name :");
                    string displayContacts2 = Console.ReadLine();
                    if (abDict.ContainsKey(displayContacts2))
                    {
                        abDict[displayContacts2].sameStatePerson();
                    }
                    else
                    {
                        Console.WriteLine("No Address book exist with name {0} ", displayContacts2);
                    }
                    break;

                case 8:
                    Console.WriteLine("\n Enter address book name :For counting same city or state");
                    string displayContacts3 = Console.ReadLine();
                    if (abDict.ContainsKey(displayContacts3))
                    {
                        abDict[displayContacts3].findCountSameStateOrCityPerson();
                    }
                    else
                    {
                        Console.WriteLine("No Address book exist with name {0} ", displayContacts3);
                    }
                    break;

                case 9:
                    Console.WriteLine("\nEnter Address Book Name for display contacts in sorted order");
                    string nameAddressBook = Console.ReadLine();
                    abDict[nameAddressBook].displayPersonInOrder();
                    break;

                case 10:
                    Console.WriteLine("\nEnter Address Book Name for Sort contacts based on City or State");
                    string nameAddressBookforSorting = Console.ReadLine();
                    Console.WriteLine("\nChoose option for sorting \n1.By City  \n2.By State \n3.By Zip");
                    int choiceSorting = Convert.ToInt32(Console.ReadLine());
                    switch (choiceSorting)
                    {
                    case 1:
                        abDict[nameAddressBookforSorting].displayPersonInOrderByCity();        //call method
                        break;

                    case 2:
                        abDict[nameAddressBookforSorting].displayPersonInOrderByState();
                        break;

                    case 3:
                        abDict[nameAddressBookforSorting].displayPersonInOrderByZip();
                        break;
                    }
                    break;

                case 11:
                    Console.WriteLine("chioce : \n1.Write Person detail in text file \n2 Read Person detail from text file");
                    int chooseOption = Convert.ToInt32(Console.ReadLine());
                    switch (chooseOption)
                    {
                    case 1:
                        Console.WriteLine("Enter Address Book name where you want to write person details");
                        string write = Console.ReadLine();
                        if (abDict.ContainsKey(write))
                        {
                            abDict[write].WritePersonDetailTextFile();
                        }
                        else
                        {
                            Console.WriteLine("No Address book exist with name {0} ", write);
                        }
                        break;

                    case 2:
                        Console.WriteLine("Enter Address Book name where you want to write person details");
                        string read = Console.ReadLine();
                        if (abDict.ContainsKey(read))
                        {
                            abDict[read].ReadPersonDetailTxtFile();
                        }
                        else
                        {
                            Console.WriteLine("No Address book exist with name {0} ", read);
                        }
                        break;

                    default:
                        Console.WriteLine("Please enter valid option only");
                        break;
                    }
                    break;


                case 12:
                    Console.WriteLine("chioce : \n1.Write Person detail in Csv file \n2 Read Person detail from Csv file");
                    int chooseOption2 = Convert.ToInt32(Console.ReadLine());
                    switch (chooseOption2)
                    {
                    case 1:
                        Console.WriteLine("Enter Address Book name where you want to write person details");
                        string write1 = Console.ReadLine();
                        if (abDict.ContainsKey(write1))
                        {
                            abDict[write1].WritePersonDetailCsvFile();
                        }
                        else
                        {
                            Console.WriteLine("No Address book exist with name {0} ", write1);
                        }
                        break;

                    case 2:
                        Console.WriteLine("Enter Address Book name where you want to write person details");
                        string read = Console.ReadLine();
                        if (abDict.ContainsKey(read))
                        {
                            abDict[read].ReadPersonDetailCsvFile();
                        }
                        else
                        {
                            Console.WriteLine("No Address book exist with name {0} ", read);
                        }
                        break;

                    default:
                        Console.WriteLine("Please enter valid option only");
                        break;
                    }
                    break;

                case 13:
                    Console.WriteLine("chioce : \n1.Write Person detail in Json file \n2 Read Person detail from Json file");
                    int chooseOption3 = Convert.ToInt32(Console.ReadLine());
                    switch (chooseOption3)
                    {
                    case 1:
                        Console.WriteLine("Enter Address Book name where you want to write person details");
                        string write1 = Console.ReadLine();
                        if (abDict.ContainsKey(write1))
                        {
                            abDict[write1].WriteContactsInJSONFile();
                        }
                        else
                        {
                            Console.WriteLine("No Address book exist with name {0} ", write1);
                        }
                        break;

                    case 2:
                        Console.WriteLine("Enter Address Book name where you want to write person details");
                        string read = Console.ReadLine();
                        if (abDict.ContainsKey(read))
                        {
                            abDict[read].ReadContactsFronJSON();
                        }
                        else
                        {
                            Console.WriteLine("No Address book exist with name {0} ", read);
                        }
                        break;

                    default:
                        Console.WriteLine("Please enter valid option");
                        break;
                    }
                    break;

                case 14:
                    Result = false;
                    break;

                default:
                    Console.WriteLine("Please enter valid option");
                    break;
                }
            }
            void addContactBook(AddressBook addressBook)
            {
                Console.WriteLine("Enter First Name : ");
                string firstName = Console.ReadLine();

                Console.WriteLine("Enter Last Name : ");
                string lastName = Console.ReadLine();

                Console.WriteLine("Enter Address : ");
                string address = Console.ReadLine();

                Console.WriteLine("Enter City : ");
                string city = Console.ReadLine();

                Console.WriteLine("Enter State : ");
                string state = Console.ReadLine();

                Console.WriteLine("Enter Phone Number : ");
                long phoneNumber = Convert.ToInt64(Console.ReadLine());

                Console.WriteLine("Enter Email id :");
                string email = Console.ReadLine();

                Console.WriteLine("Enter Zip : ");
                int zip = Convert.ToInt32(Console.ReadLine());

                addressBook.AddContact(firstName, lastName, address, city, state, phoneNumber, email, zip);
            }
        }
예제 #6
0
        /// <summary>
        /// Defines the entry point of the application.
        /// </summary>
        /// <param name="args">The arguments.</param>
        static void Main(string[] args)
        {
            ///Variables
            int    choice, choice1;
            string bookName = "default";

            Console.WriteLine("Welcome to Address Book Program");
            ///Creates reference of AdressBook.
            AddressBook addressBook = new AddressBook();

            ///Menu for AddressBook.
            Console.WriteLine("Would You Like To \n1.Work on default AddressBook \n2.Create New AddressBook");
            choice1 = Convert.ToInt32(Console.ReadLine());
            switch (choice1)
            {
            case 1:
                addressBook.AddAddressBook(bookName);
                break;

            case 2:
                Console.WriteLine("Enter Name Of New Addressbook You want to create : ");
                bookName = Console.ReadLine();
                addressBook.AddAddressBook(bookName);
                break;
            }
            do
            {
                ///Menu for Contacts.
                Console.WriteLine($"Working On {bookName} AddressBook\n");
                Console.WriteLine("Choose An Option \n1.Add New Contact \n2.Edit Existing Contact \n3.Delete A Contact \n4.View A Contact \n5.View All Contacts \n6.Add New AddressBook \n7.Switch AddressBook \n8.Search Contact by city or state\n" +
                                  "9.View Contacts by City or State.\n10. Count by city or state.\n11.Sort Entries.  \n12.Exit Application\n");
                choice = Convert.ToInt32(Console.ReadLine());
                switch (choice)
                {
                case 1:
                    Console.WriteLine("Enter First Name :");
                    string firstName = Console.ReadLine();
                    Console.WriteLine("Enter Last Name :");
                    string lastName = Console.ReadLine();
                    Console.WriteLine("Enter Address :");
                    string address = Console.ReadLine();
                    Console.WriteLine("Enter City :");
                    string city = Console.ReadLine();
                    Console.WriteLine("Enter State :");
                    string state = Console.ReadLine();
                    Console.WriteLine("Enter Email :");
                    string email = Console.ReadLine();
                    Console.WriteLine("Enter Zip :");
                    int zip = Convert.ToInt32(Console.ReadLine());
                    Console.WriteLine("Enter Phone Number :");
                    long phoneNumber = long.Parse(Console.ReadLine());
                    addressBook.AddContact(firstName, lastName, address, city, state, email, zip, phoneNumber, bookName);
                    break;

                case 2:
                    Console.WriteLine("Enter First Name Of Contact To Edit :");
                    string nameToEdit = Console.ReadLine();
                    addressBook.EditContact(nameToEdit, bookName);
                    break;

                case 3:
                    Console.WriteLine("Enter First Name Of Contact To Delete :");
                    string nameToDelete = Console.ReadLine();
                    addressBook.DeleteContact(nameToDelete, bookName);
                    break;

                case 4:
                    Console.WriteLine("Enter First Name Of Contact To View :");
                    string nameToView = Console.ReadLine();
                    addressBook.ViewContact(nameToView, bookName);
                    break;

                case 5:
                    addressBook.ViewAllContacts(bookName);
                    break;

                case 6:
                    Console.WriteLine("Enter Name For New AddressBook");
                    string newAddressBook = Console.ReadLine();
                    addressBook.AddAddressBook(newAddressBook);
                    Console.WriteLine("Would you like to Switch to " + newAddressBook);
                    Console.WriteLine("1.Yes \n2.No");
                    int c = Convert.ToInt32(Console.ReadLine());
                    if (c == 1)
                    {
                        bookName = newAddressBook;
                    }
                    break;

                case 7:
                    Console.WriteLine("Enter Name Of AddressBook From Below List");
                    foreach (KeyValuePair <string, AddressBook> item in addressBook.GetAddressBook())
                    {
                        Console.WriteLine(item.Key);
                    }
                    while (true)
                    {
                        bookName = Console.ReadLine();
                        if (addressBook.GetAddressBook().ContainsKey(bookName))
                        {
                            break;
                        }
                        else
                        {
                            Console.WriteLine("No such AddressBook found. Try Again.");
                        }
                    }
                    break;

                case 8:
                    Console.WriteLine("Would You Like To \n1.Search by city \n2.Search by state");
                    int opt = Convert.ToInt32(Console.ReadLine());
                    switch (opt)
                    {
                    case 1:
                        Console.WriteLine("Enter name of city :");
                        addressBook.SearchPersonByCity(Console.ReadLine());
                        break;

                    case 2:
                        Console.WriteLine("Enter name of state :");
                        addressBook.SearchPersonByState(Console.ReadLine());
                        break;

                    default:
                        Console.WriteLine("Invalid Input.Enter 1 or 2");
                        break;
                    }
                    break;

                case 9:
                    Console.WriteLine("Would You Like To \n1.View by city \n2.View by state");
                    int option = Convert.ToInt32(Console.ReadLine());
                    switch (option)
                    {
                    case 1:
                        Console.WriteLine("Enter name of city :");
                        addressBook.ViewByCity(Console.ReadLine());
                        break;

                    case 2:
                        Console.WriteLine("Enter name of state :");
                        addressBook.ViewByState(Console.ReadLine());
                        break;

                    default:
                        Console.WriteLine("Invalid Input.Enter 1 or 2");
                        break;
                    }
                    break;

                case 10:
                    addressBook.CountPersonByCityOrState();
                    break;

                case 11:
                    Console.WriteLine("\n1.Sort By Name \n2.Sort By City \n3.Sort By State \n4.Sort By Zip");
                    int ch = Convert.ToInt32(Console.ReadLine());
                    switch (ch)
                    {
                    case 1:
                        addressBook.SortByName();
                        break;

                    case 2:
                        addressBook.SortByCity();
                        break;

                    case 3:
                        addressBook.SortByState();
                        break;

                    case 4:
                        addressBook.SortByZip();
                        break;

                    default:
                        Console.WriteLine("Invalid Choice");
                        break;
                    }
                    break;

                case 12:
                    Console.WriteLine("Thank You For Using Address Book System.");
                    break;
                }
            }while (choice != 12);
            Console.WriteLine("Writing in AddressBook.txt");
            AddressBookFileIO.WriteUsingStreamWriter(addressBook.addressBookDictionary);
            AddressBookFileIO.ReadUsingStreamReader();
        }
예제 #7
0
        static void Main(string[] args)
        {
            Console.WriteLine("Welcome to Address Book Program");
            AddressBook addressBook = new AddressBook();
            int         choice, choice2;
            string      bookName = "default";

            Console.WriteLine("Would You Like To \n1.Work on default AddressBook \n2.Create New AddressBook");
            choice2 = Convert.ToInt32(Console.ReadLine());
            switch (choice2)
            {
            case 1:
                addressBook.AddAddressBook(bookName);
                break;

            case 2:
                Console.WriteLine("Enter Name Of New Addressbook You want to create : ");
                bookName = Console.ReadLine();
                addressBook.AddAddressBook(bookName);
                break;

            default:
                Console.WriteLine("Invalid Input, Proceeding with default AddressBook");
                addressBook.AddAddressBook(bookName);
                break;
            }
            do
            {
                Console.WriteLine($"Working On {bookName} AddressBook\n");
                Console.WriteLine("Choose An Option \n1.Add New Contact \n2.Edit Existing Contact \n3.Delete A Contact \n4.View A Contact \n5.View All Contacts \n6.Add New AddressBook \n7.Switch AddressBook \n8.Search Contact by City/State \n9.Count by City/State \n10.Sort Entries \n11.Read/Write AddressBook to text file \n12.Read/Write AddressBook to csv file \n13.Read/Write AddressBook to JSON file \n0.Exit Application\n");
                choice = Convert.ToInt32(Console.ReadLine());
                switch (choice)
                {
                case 1:
                    Console.WriteLine("Enter First Name :");
                    string firstName = Console.ReadLine();
                    Console.WriteLine("Enter Last Name :");
                    string  lastName = Console.ReadLine();
                    Contact temp     = new Contact()
                    {
                        FirstName = firstName,
                        LastName  = lastName
                    };
                    if (addressBook.CheckDuplicateEntry(temp, bookName))
                    {
                        break;
                    }
                    Console.WriteLine("Enter Address :");
                    string address = Console.ReadLine();
                    Console.WriteLine("Enter City :");
                    string city = Console.ReadLine();
                    Console.WriteLine("Enter State :");
                    string state = Console.ReadLine();
                    Console.WriteLine("Enter Email :");
                    string email = Console.ReadLine();
                    Console.WriteLine("Enter Zip :");
                    int zip = Convert.ToInt32(Console.ReadLine());
                    Console.WriteLine("Enter Phone Number :");
                    long phoneNumber = long.Parse(Console.ReadLine());
                    addressBook.AddContact(firstName, lastName, address, city, state, email, zip, phoneNumber, bookName);
                    break;

                case 2:
                    Console.WriteLine("Enter Full Name Of Contact To Edit :");
                    string nameToEdit = Console.ReadLine();
                    addressBook.EditContact(nameToEdit, bookName);
                    break;

                case 3:
                    Console.WriteLine("Enter Full Name Of Contact To Delete :");
                    string nameToDelete = Console.ReadLine();
                    addressBook.DeleteContact(nameToDelete, bookName);
                    break;

                case 4:
                    Console.WriteLine("Enter Full Name Of Contact To View :");
                    string nameToView = Console.ReadLine();
                    addressBook.ViewContact(nameToView, bookName);
                    break;

                case 5:
                    addressBook.ViewContact(bookName);
                    break;

                case 6:
                    Console.WriteLine("Enter Name For New AddressBook");
                    string newAddressBook = Console.ReadLine();
                    addressBook.AddAddressBook(newAddressBook);
                    Console.WriteLine("Would you like to Switch to " + newAddressBook);
                    Console.WriteLine("1.Yes \n2.No");
                    int c = Convert.ToInt32(Console.ReadLine());
                    if (c == 1)
                    {
                        bookName = newAddressBook;
                    }
                    break;

                case 7:
                    Console.WriteLine("Enter Name Of AddressBook From Below List");
                    foreach (KeyValuePair <string, AddressBook> item in addressBook.GetAddressBook())
                    {
                        Console.WriteLine(item.Key);
                    }
                    while (true)
                    {
                        bookName = Console.ReadLine();
                        if (addressBook.GetAddressBook().ContainsKey(bookName))
                        {
                            break;
                        }
                        else
                        {
                            Console.WriteLine("No such AddressBook found. Try Again.");
                        }
                    }
                    break;

                case 8:
                    Console.WriteLine("Would You Like To \n1.Search by city \n2.Search by state");
                    int opt = Convert.ToInt32(Console.ReadLine());
                    switch (opt)
                    {
                    case 1:
                        Console.WriteLine("Enter name of city :");
                        addressBook.SearchPersonByCity(Console.ReadLine());
                        break;

                    case 2:
                        Console.WriteLine("Enter name of state :");
                        addressBook.SearchPersonByState(Console.ReadLine());
                        break;

                    default:
                        Console.WriteLine("Invalid Input.Enter 1 or 2");
                        break;
                    }
                    break;

                case 9:
                    addressBook.DisplayCountByCityandState();
                    break;

                case 10:
                    Console.WriteLine("\n1.Sort By Name \n2.Sort By City \n3.Sort By State \n4.Sort By Zip");
                    int ch = Convert.ToInt32(Console.ReadLine());
                    switch (ch)
                    {
                    case 1:
                        addressBook.SortByName();
                        break;

                    case 2:
                        addressBook.SortByCity();
                        break;

                    case 3:
                        addressBook.SortByState();
                        break;

                    case 4:
                        addressBook.SortByZip();
                        break;

                    default:
                        Console.WriteLine("Invalid Choice");
                        break;
                    }
                    break;

                case 11:
                    FileIOOperation fileIO = new FileIOOperation();
                    fileIO.WriteToFile(addressBook.addressBookDictionary);
                    fileIO.ReadFromFile();
                    break;

                case 12:
                    CSVHandler handler = new CSVHandler();
                    handler.WriteToFile(addressBook.addressBookDictionary);
                    handler.ReadFromFile();
                    break;

                case 13:
                    JSONOperation json = new JSONOperation();
                    json.WriteToFile(addressBook.addressBookDictionary);
                    json.ReadFromFile();
                    break;

                case 0:
                    Console.WriteLine("Thank You For Using Address Book System.");
                    break;

                default:
                    Console.WriteLine("Invalid Entry. Enter value between 0 to 8");
                    break;
                }
            } while (choice != 0);
        }
예제 #8
0
        static void Main(string[] args)
        {
            AddressBookBinder binder = new AddressBookBinder();

            Console.WriteLine("Welcome to Address Book Program");
            int result = 1;

            while (result == 1)
            {
                Console.WriteLine("Enter the name of the Address Book to be used");
                string      addrName = Console.ReadLine();
                AddressBook book     = new AddressBook();
                book.People = binder.AddAddrBook(addrName, book.People);
                int loop = 1;
                while (loop == 1)
                {
                    Console.WriteLine("\nSelect the option. \n1. Add new contact. \n2. Edit existing contact.\n3. Delete Contact \n4. Search By City \n5. Count citywise contacts \n6. Display Alphabetically \n7. Sort By Zipcode \n8. Sort By City \n9. Sort By State \n10. Read the contacts from txt file \n11. Write the contacts in txt file \n12. Read the contacts from csv file \n13. Write the contacts in csv file \n14. Read the contacts from json file \n15. Write the contacts in json file \n16. Exit. ");
                    int option = int.Parse(Console.ReadLine());
                    switch (option)
                    {
                    case 1:
                        Console.WriteLine("Enter the person details to be added in the address book");
                        Console.WriteLine("First Name");
                        string FirstName = Console.ReadLine();
                        Console.WriteLine("Last Name");
                        string LastName = Console.ReadLine();
                        Console.WriteLine("Address");
                        string Address = Console.ReadLine();
                        Console.WriteLine("City");
                        string City = Console.ReadLine();
                        Console.WriteLine("State");
                        string State = Console.ReadLine();
                        Console.WriteLine("Zip code");
                        string ZipCode = Console.ReadLine();
                        Console.WriteLine("Phone Number");
                        string PhoneNumber = Console.ReadLine();
                        Console.WriteLine("Email");
                        string Email = Console.ReadLine();
                        book.AddContact(FirstName, LastName, Address, City, State, ZipCode, PhoneNumber, Email);
                        break;

                    case 2:
                        Console.WriteLine("Enter the first name of the contact to be edited ");
                        string name = Console.ReadLine();
                        book.EditContact(name);
                        break;

                    case 3:
                        Console.WriteLine("Enter the first name of the contact to be deleted ");
                        string name1 = Console.ReadLine();
                        if (book.RemoveContact(name1))
                        {
                            Console.WriteLine("Contact removed successfully");
                            break;
                        }
                        else
                        {
                            Console.WriteLine("Contact not found");
                            break;
                        }

                    case 4:
                        binder.CreateCityDictionary();
                        Console.WriteLine("Enter city whose contacts need to be searched");
                        string city = Console.ReadLine();
                        foreach (Contact contact in binder.CityDictionary[city])
                        {
                            Console.WriteLine(contact.FirstName + "\t" + contact.LastName + "\t" + contact.Address + "\t" + contact.City + "\t" + contact.State + "\t" + contact.ZipCode + "\t" + contact.PhoneNumber + "\t" + contact.Email);
                        }
                        break;

                    case 5:
                        binder.CreateCityDictionary();
                        foreach (var key in binder.CityDictionary.Keys)
                        {
                            Console.WriteLine(key + "\t" + binder.CityDictionary[key].Count);
                        }
                        break;

                    case 6:
                        book.AlphabeticallyArrange();
                        break;

                    case 7:
                        book.SortByPincode();
                        break;

                    case 8:
                        book.SortByCity();
                        break;

                    case 9:
                        book.SortByState();
                        break;

                    case 10:
                        Console.WriteLine("Reading contacts from txt file");
                        ReadWrite.ReadFromStreamReader();
                        break;

                    case 11:
                        Console.WriteLine("Writing contacts in txt file");
                        ReadWrite.WriteUsingStreamWriter(book.People);
                        break;

                    case 12:
                        Console.WriteLine("Reading contacts from csv file");
                        ReadWrite.ReadCSVFile();
                        break;

                    case 13:
                        Console.WriteLine("Writing contacts in csv file");
                        ReadWrite.WriteCSVFile(book.People);
                        break;

                    case 14:
                        Console.WriteLine("Reading contacts from json file");
                        ReadWrite.ReadJsonFile();
                        break;

                    case 15:
                        Console.WriteLine("Writing contacts in json file");
                        ReadWrite.WriteToJsonFile(book.People);
                        break;

                    case 16:
                        loop = 0;
                        break;
                    }
                    binder.Binder[addrName] = (book.People);
                }
                Console.WriteLine("Do you want to enter an address book. \n1. yes \n2. no");
                result = int.Parse(Console.ReadLine());
            }
        }
예제 #9
0
        static void Main(string[] args)
        {
            Console.WriteLine("Welcome to Address Book Program");

            Dictionary <string, AddressBook> addressBookMap = new Dictionary <string, AddressBook>();

            int         addressBookChoice = 1;
            AddressBook addressBook       = null;

            while (addressBookChoice != 4)
            {
                Console.WriteLine("\n1. Create new Address Book");
                Console.WriteLine("2. Update existing Address Book");
                Console.WriteLine("3. Search Person in a City or State");
                Console.WriteLine("4. Exit");
                Console.WriteLine("Enter your choice");
                try
                {
                    addressBookChoice = Convert.ToInt32(Console.ReadLine());
                }
                catch (FormatException e)
                {
                    Console.WriteLine(e.Message);
                    break;
                }
                switch (addressBookChoice)
                {
                case 1:
                    Console.WriteLine("\nEnter the name of address book");
                    string bookName = Console.ReadLine();
                    addressBookMap.Add(bookName, new AddressBook(bookName));
                    break;

                case 2:
                    if (addressBookMap.Count != 0)
                    {
                        bool addressBookExist = false;
                        while (!addressBookExist)
                        {
                            try
                            {
                                Console.WriteLine("\nEnter the Address Book Name");
                                string name = Console.ReadLine();
                                addressBook      = addressBookMap[name];
                                addressBookExist = true;
                            }
                            catch (KeyNotFoundException e)
                            {
                                Console.WriteLine(e.Message);
                            }
                        }

                        int choice = 1;

                        while (choice != 9)
                        {
                            Console.WriteLine("\n1. Add a Contact");
                            Console.WriteLine("2. View Address Book");
                            Console.WriteLine("3. Edit Contact");
                            Console.WriteLine("4. Delete Contact");
                            Console.WriteLine("5. View person by city/state");
                            Console.WriteLine("6. Read Contact from CSV");
                            Console.WriteLine("7. Write Contact to CSV");
                            Console.WriteLine("8. Retrieve Contact from database");
                            Console.WriteLine("9. Back to main menu\n");
                            Console.WriteLine("Enter your choice");
                            try
                            {
                                choice = Convert.ToInt32(Console.ReadLine());
                            }
                            catch (FormatException e)
                            {
                                Console.WriteLine(e.Message);
                                break;
                            }

                            switch (choice)
                            {
                            case 1:
                                addressBook.AddContact();
                                break;

                            case 2:
                                addressBook.viewContacts();
                                break;

                            case 3:
                                addressBook.editContact();
                                break;

                            case 4:
                                addressBook.DeleteContact();
                                break;

                            case 5:
                                Console.WriteLine("1. City\n2. State ");
                                Console.Write("Select : ");
                                int option = Convert.ToInt32(Console.ReadLine());
                                if (option == 1)
                                {
                                    addressBook.groupByCityOrState("city");
                                }
                                else if (option == 2)
                                {
                                    addressBook.groupByCityOrState("state");
                                }
                                else
                                {
                                    Console.WriteLine("Invalid input.");
                                    break;
                                }

                                break;

                            case 6:
                                addressBook.ReadJSON();
                                break;

                            case 7:
                                addressBook.WriteJSON();
                                break;

                            case 8:
                                Console.WriteLine("\n1. Get All Contacts in DB");
                                Console.WriteLine("2. Get By City/State");
                                int x = Convert.ToInt32(Console.ReadLine());
                                addressBook.RetrieveDataFromDB(x);
                                break;

                            case 9:
                                Console.WriteLine("Back to main menu\n");
                                break;

                            default:
                                break;
                            }
                        }
                    }
                    else
                    {
                        Console.WriteLine("\nNo Address Book Available");
                    }
                    break;

                case 3:
                    Console.WriteLine("\nEnter the place needed to be searched : ");
                    string place = Console.ReadLine();
                    Console.WriteLine("\nPerson found at {0} are : ", place);
                    foreach (KeyValuePair <string, AddressBook> entry in addressBookMap)
                    {
                        addressBook = entry.Value;
                        List <ContactPerson> persons = addressBook.searchPersonByPlace(place);
                        foreach (ContactPerson person in persons)
                        {
                            Console.WriteLine(person.toString());
                        }
                    }
                    break;

                case 4:
                    Console.WriteLine("\nThank you for using the application");
                    break;

                default:
                    break;
                }
            }
        }
예제 #10
0
        static void Main(string[] args)
        {
            AddressBookBinder binder = new AddressBookBinder();

            Console.WriteLine("Enter the name of the address book ............");
            int AnotherBook = 1;

            while (AnotherBook == 1)
            {
                string      BookName = Console.ReadLine();
                AddressBook book     = new AddressBook();
                book.contactBook = binder.AddAddressBook(BookName, book.contactBook);

                Console.WriteLine("Welcome to Address Book Program");
                int flag = 1;

                while (flag == 1)
                {
                    Console.WriteLine("Select the option. \n1. for adding new contact. \n2. To edit existing contact. \n3. Delete Contact. \n4 Search by city. \n5.Count by City. \n6 exit");

                    int option = int.Parse(Console.ReadLine());

                    switch (option)
                    {
                    case 1:
                        Console.WriteLine("Enter the person details to be added ...........");
                        Console.WriteLine("First Name");
                        string firstName = Console.ReadLine();
                        Console.WriteLine("Last Name");
                        string lastName = Console.ReadLine();
                        Console.WriteLine("Address");
                        string address = Console.ReadLine();
                        Console.WriteLine("City");
                        string city = Console.ReadLine();
                        Console.WriteLine("State");
                        string state = Console.ReadLine();
                        Console.WriteLine("Zip code");
                        string zip = Console.ReadLine();
                        Console.WriteLine("Phone Number");
                        string phoneNumber = Console.ReadLine();
                        Console.WriteLine("Email");
                        string email = Console.ReadLine();
                        if (book.AddContact(firstName, lastName, address, city, state, zip, phoneNumber, email))
                        {
                            Console.WriteLine("Contact added successfully");
                            break;
                        }
                        else
                        {
                            Console.WriteLine("Contact already exists");
                            break;
                        }

                    case 2:
                        Console.WriteLine("Enter the first name of the contact to be edited ");
                        string  name = Console.ReadLine();
                        Contact c    = book.FindContact(name);
                        if (c == null)
                        {
                            Console.WriteLine("Address for {0} couldn't be found.", name);
                            break;
                        }
                        else
                        {
                            Console.WriteLine("New Last Name");
                            c.lastName = Console.ReadLine();
                            Console.WriteLine("New Address");
                            c.address = Console.ReadLine();
                            Console.WriteLine("New City");
                            c.city = Console.ReadLine();
                            Console.WriteLine("New State");
                            c.state = Console.ReadLine();
                            Console.WriteLine("New Zip code");
                            c.zip = Console.ReadLine();
                            Console.WriteLine("New Phone Number");
                            c.phoneNumber = Console.ReadLine();
                            Console.WriteLine("New Email");
                            c.email = Console.ReadLine();
                            Console.WriteLine("Details updated for " + name);
                            break;
                        }

                    case 3:
                        Console.WriteLine("Enter the first name of the contact to be deleted ");
                        string name1 = Console.ReadLine();
                        if (book.RemoveContact(name1))
                        {
                            Console.WriteLine("Contact removed successfully");
                            break;
                        }
                        else
                        {
                            Console.WriteLine("Contact not found");
                            break;
                        }

                    case 4:
                        Console.WriteLine("Enter the city whose contact list is needed.");
                        string City = Console.ReadLine();
                        foreach (Contact co in binder.CityDictionary[City])
                        {
                            Console.WriteLine(co.firstName + "\t" + co.lastName + "\t" + co.city + "\t" + co.state + "\t" + co.zip + "\t" + co.phoneNumber);
                        }
                        break;

                    case 5:
                        foreach (var key in binder.CityDictionary.Keys)
                        {
                            Console.WriteLine(key + "\t" + binder.CityDictionary[key].Count);
                        }
                        break;

                    case 6:
                        flag = 0;
                        break;
                    }
                }
                Console.WriteLine("enter 1 to insert another book and 0 otherwise...");
                AnotherBook = Convert.ToInt32(Console.ReadLine());
                if (AnotherBook == 1)
                {
                    Console.WriteLine("Enter the name of the address book..........");
                }
            }

            foreach (var k in binder.Binder.Keys)
            {
                Console.WriteLine(k);
                foreach (Contact c in binder.Binder[k])
                {
                    Console.WriteLine(c.firstName + "\t" + c.lastName + "\t" + c.city + "\t" + c.state + "\t" + c.zip + "\t" + c.phoneNumber);
                }
            }
        }