Запись введенных данных в файл - C#

Узнай цену своей работы

Формулировка задачи:

Нужно чтобы в файл дозаписывались данные согласно введенных пользователем значений в консоли. У меня есть два поля: ID , Owner Если пользователь выбирает в консольном меню 1, ему выдает "введите данные ID", Далее, пользователь вводит данные OWNER, на основании чего создается новая строка в файле. Если такой ID уже существует, то введенные данные OWNER (связанного с ID) перезаписываются Вот не могу понять как это реализовать. Особенно в части перезаписи.

Решение задачи: «Запись введенных данных в файл»

textual
Листинг программы
namespace ProductDatabase
{
    class AddNewProductMenu
    {
        public static void Show()
        {
            Clear();
            WriteLine("\tДодавання товару");
            WriteLine("\n1. Додати товар");
            WriteLine("\n0. Повернутися до попереднього меню");
            Choose();
        }
 
        public static void Choose()
        {
            string choice = (ReadLine());
            Clear();
            switch (choice)
            {
                case "0":
                    Back();
                    break;
                case "1":
                    AddProduct();
                    break;
                default:
                    AddProduct();
                    break;
            }
        }
 
        public static void WriteAt(int x, int y)
        {
            try
            {
                Console.SetCursorPosition(x, y);
            }
            catch (ArgumentOutOfRangeException e)
            {
                Console.Clear();
                Console.WriteLine(e.Message);
            }
        }
 
        public static void AddProduct()
        {
            Title = "Меню додавання нового товару";
            ObjectToStringConverter display = new ObjectToStringConverter();
            WriteLine("Список категорій\n");
            var Category = display.CategoryListToText();
            foreach (var cat in Category)
            {
                Console.WriteLine(cat);
            }
            string CategoryID = null;
            int CatID;
            string ProductCategory = null;
            Write("\nВведіть ID категорії зі списку : ");
            try
            {
                CategoryID = (Console.ReadLine());
                bool valid = Validation.Id(CategoryID);
 
                if (valid == true)
                {
                    CatID = Convert.ToInt32(CategoryID); ;
                    ProductCategory = display.CategoryToText(CatID);
                    Clear();
                    WriteLine("Категорія : {0}", ProductCategory);
                }
            }
            catch (NullReferenceException e)
            {
                Console.WriteLine(e.Message);
            }
            catch (FileNotFoundException fnfe)
            {
                Console.WriteLine(fnfe.Message);
            }
 
            WriteLine("\nСписок виробників\n");
            var Manufacturer = display.ManufacturerListToText();
            foreach (var man in Manufacturer)
            {
                Console.WriteLine(man);
            }
            Write("\nВведіть ID виробника зі списку : ");
            string ManufacturerID = (Console.ReadLine());
            int ManID;
            string ProductManufacturer = null;
            try
            {
                bool valid = Validation.Id(ManufacturerID);
 
                if (valid == true)
                {
                    ManID = Convert.ToInt32(ManufacturerID);
                    ProductManufacturer = display.ManufacturerToText(ManID);
                    Clear();
                    WriteLine("Категорія : {0}", ProductCategory);
                    WriteLine("Виробник : {0}", ProductManufacturer);
                }
            }
            catch (NullReferenceException e)
            {
                Console.WriteLine(e.Message);
            }
            catch (FileNotFoundException fnfe)
            {
                Console.WriteLine(fnfe.Message);
            }
 
            Write("\nВведіть назву товару : ");
            string ProductName = null;
            try
            {
                ProductName = ReadLine();
                bool valid = Validation.ProductName(ProductName);
 
                if (valid == true)
                {
                    Clear();
                    WriteLine("Категорія : {0}", ProductCategory);
                    WriteLine("Виробник : {0}", ProductManufacturer);
                    WriteLine("Назва товару : {0}", ProductName);
                }
            }
            catch (FileNotFoundException fnfe)
            {
                Console.WriteLine(fnfe.Message);
            }
 
            Write("\nВведіть дату виготовлення : 00.00.0000"); // потрібно буде привести приклад правильного формату
            WriteAt(28, 4);
            string ProductManufactureDate = null;
            try
            {
                ProductManufactureDate = ReadLine();
                bool valid = Validation.ProductionDate(ProductManufactureDate);
 
                if (valid == true)
                {
                    Clear();
                    WriteLine("Категорія : {0}", ProductCategory);
                    WriteLine("Виробник : {0}", ProductManufacturer);
                    WriteLine("Назва товару : {0}", ProductName);
                    WriteLine("Дата виготовлення : {0}", ProductManufactureDate);
                }
            }
            catch (FileNotFoundException fnfe)
            {
                Console.WriteLine(fnfe.Message);
            }
 
            Write("\nВведіть гарантійний термін : ");
            string ProductWarranty = null;
            try
            {
                ProductWarranty = ReadLine();
                bool valid = Validation.ExpirationDateTxt(ProductWarranty);
 
                if (valid == true)
                {
                    Clear();
                    WriteLine("Категорія : {0}", ProductCategory);
                    WriteLine("Виробник : {0}", ProductManufacturer);
                    WriteLine("Назва товару : {0}", ProductName);
                    WriteLine("Дата виготовлення : {0}", ProductManufactureDate);
                    WriteLine("Гарантійний термін : {0} років", ProductWarranty);
                }
            }
            catch (FileNotFoundException fnfe)
            {
                Console.WriteLine(fnfe.Message);
            }
 
            WriteLine("\nСписок постачальників\n");
            var Suppliers = display.SuppliersListToTextShort();
            foreach (var sup in Suppliers)
            {
                Console.WriteLine(sup);
            }
            Write("\nВведіть ID постачальника зі списку : ");
            string SupplierId = null;
            int SupID;
            string ProductProvider = null;
            try
            {
                SupplierId = ReadLine();
                bool valid = Validation.Id(ManufacturerID);
 
                if (valid == true)
                {
                    SupID = Convert.ToInt32(SupplierId);
                    ProductProvider = display.SupplierToText(SupID);
                    Clear();
                    WriteLine("Категорія : {0}", ProductCategory);
                    WriteLine("Виробник : {0}", ProductManufacturer);
                    WriteLine("Назва товару : {0}", ProductName);
                    WriteLine("Дата виготовлення : {0}", ProductManufactureDate);
                    WriteLine("Гарантійний термін : {0}", ProductWarranty);
                    WriteLine("Постачальник : {0}", ProductProvider);
                }
            }
            catch (NullReferenceException e)
            {
                Console.WriteLine(e.Message);
            }
            catch (FileNotFoundException fnfe)
            {
                Console.WriteLine(fnfe.Message);
            }
 
            Write("\nВведіть дату поставки : 00.00.0000");
            WriteAt(24, 7);
            string ProductDeliveryDate = null;
            try
            {
                ProductDeliveryDate = ReadLine();
                bool valid = Validation.DeliveryDate(ProductDeliveryDate);
 
                if (valid == true)
                {
                    Clear();
                    WriteLine("Категорія : {0}", ProductCategory);
                    WriteLine("Виробник : {0}", ProductManufacturer);
                    WriteLine("Назва товару : {0}", ProductName);
                    WriteLine("Дата виготовлення : {0}", ProductManufactureDate);
                    WriteLine("Гарантійний термін : {0}", ProductWarranty);
                    WriteLine("Постачальник : {0}", ProductProvider);
                    WriteLine("Дата поставки : {0}", ProductDeliveryDate);
                }
            }
            catch (FileNotFoundException fnfe)
            {
                Console.WriteLine(fnfe.Message);
            }
 
            Write("\nВведіть кількість одиниць : ");
            string ProductAmount = null;
            try
            {
                ProductAmount = ReadLine();
                bool valid = Validation.Amount(ProductAmount);
 
                if (valid == true)
                {
                    Clear();
                    WriteLine("Категорія : {0}", ProductCategory);
                    WriteLine("Виробник : {0}", ProductManufacturer);
                    WriteLine("Назва товару : {0}", ProductName);
                    WriteLine("Дата виготовлення : {0}", ProductManufactureDate);
                    WriteLine("Гарантійний термін : {0}", ProductWarranty);
                    WriteLine("Постачальник : {0}", ProductProvider);
                    WriteLine("Дата поставки : {0}", ProductDeliveryDate);
                    WriteLine("Кількість одиниць : {0}", ProductAmount);
                }
            }
            catch (FileNotFoundException fnfe)
            {
                Console.WriteLine(fnfe.Message);
            }
 
            Write("\nВведіть ціну за одиницю : ");
            string ProductPrice = null;
            try
            {
                ProductPrice = ReadLine();
                bool valid = Validation.Price(ProductPrice);
 
                if (valid == true)
                {
                    Clear();
                    WriteLine("Категорія : {0}", ProductCategory);
                    WriteLine("Виробник : {0}", ProductManufacturer);
                    WriteLine("Назва товару : {0}", ProductName);
                    WriteLine("Дата виготовлення : {0}", ProductManufactureDate);
                    WriteLine("Гарантійний термін : {0}", ProductWarranty);
                    WriteLine("Постачальник : {0}", ProductProvider);
                    WriteLine("Дата поставки : {0}", ProductDeliveryDate);
                    WriteLine("Кількість одиниць : {0}", ProductAmount);
                    WriteLine("Ціна за одиницю : {0}", ProductPrice);
                }
            }
            catch (FileNotFoundException fnfe)
            {
                Console.WriteLine(fnfe.Message);
            }
 
            Write("\nВведіть номер складу : ");
            string ProductWarehouse = null;
            try
            {
                ProductWarehouse = ReadLine();
                bool valid = Validation.WarehouseNumber(ProductWarehouse);
 
                if (valid == true)
                {
                    Clear();
                    WriteLine("Категорія : {0}", ProductCategory);
                    WriteLine("Виробник : {0}", ProductManufacturer);
                    WriteLine("Назва товару : {0}", ProductName);
                    WriteLine("Дата виготовлення : {0}", ProductManufactureDate);
                    WriteLine("Гарантійний термін : {0}", ProductWarranty);
                    WriteLine("Постачальник : {0}", ProductProvider);
                    WriteLine("Дата поставки : {0}", ProductDeliveryDate);
                    WriteLine("Кількість одиниць : {0}", ProductAmount);
                    WriteLine("Ціна за одиницю : {0}", ProductPrice);
                    WriteLine("Номер складу : {0}", ProductWarehouse);
                }
            }
            catch (FileNotFoundException fnfe)
            {
                Console.WriteLine(fnfe.Message);
            }
 
            Write("\nВведіть короткий опис : ");
            string ProductDescription = null;
            try
            {
                ProductDescription = ReadLine();
                bool valid = Validation.ShortDescription(ProductDescription);
 
                if (valid == true)
                {
                    Clear();
                    WriteLine("Категорія : {0}", ProductCategory);
                    WriteLine("Виробник : {0}", ProductManufacturer);
                    WriteLine("Назва товару : {0}", ProductName);
                    WriteLine("Дата виготовлення : {0}", ProductManufactureDate);
                    WriteLine("Гарантійний термін : {0}", ProductWarranty);
                    WriteLine("Постачальник : {0}", ProductProvider);
                    WriteLine("Дата поставки : {0}", ProductDeliveryDate);
                    WriteLine("Кількість одиниць : {0}", ProductAmount);
                    WriteLine("Ціна за одиницю : {0}", ProductPrice);
                    WriteLine("Номер складу : {0}", ProductWarehouse);
                    WriteLine("Короткий опис : {0}", ProductDescription);
                }
            }
            catch (FileNotFoundException fnfe)
            {
                Console.WriteLine(fnfe.Message);
            }
 
            Write("\nЗаповніть поле для приміток якщо потрібно : ");
            string ProductNotes = null;
            try
            {
                ProductNotes = ReadLine();
                bool valid = Validation.Memo(ProductNotes);
 
                if (valid == true)
                {
                    Clear();
                    WriteLine("Категорія : {0}", ProductCategory);
                    WriteLine("Виробник : {0}", ProductManufacturer);
                    WriteLine("Назва товару : {0}", ProductName);
                    WriteLine("Дата виготовлення : {0}", ProductManufactureDate);
                    WriteLine("Гарантійний термін : {0}", ProductWarranty);
                    WriteLine("Постачальник : {0}", ProductProvider);
                    WriteLine("Дата поставки : {0}", ProductDeliveryDate);
                    WriteLine("Кількість одиниць : {0}", ProductAmount);
                    WriteLine("Ціна за одиницю : {0}", ProductPrice);
                    WriteLine("Номер складу : {0}", ProductWarehouse);
                    WriteLine("Короткий опис : {0}", ProductDescription);
                    WriteLine("Примітка : {0}", ProductNotes);
                }
            }
            catch (FileNotFoundException fnfe)
            {
                Console.WriteLine(fnfe.Message);
            }
 
            WriteLine("\nІнформація введена успішно!");
            WriteLine("Натисніть будь яку клавішу для повернення до головного меню.");
 
            ReadLine();
            Back();

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4 из 5
Похожие ответы