Создать консольное приложение, которое записывает в лог-файл три введенных пользователем параметра - C#

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

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

Здравствуйте.Есть задание - "Создать консольное приложение, которое записывает в лог-файл три введенных пользователем параметра (одно число, одну строку и одно значение bool). При запуске приложение загружает содержимое файла и отображает пользователю значения сохраненных ранее параметров. Если файла нет, то вывести соответствующее сообщение. Пользователь вводит значения параметров в произвольном порядке, для чего организовать меню. Данные сохраняются в файл в текстовом виде по одному параметру на строку ("лишних" строк быть не должно) в том порядке, в котором пользователь вводил их в консоль." Вот сам код,который получился:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
 
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            int chel;
            do
            {
                if (File.Exists(@"C:\1\simple1.txt"))
                {
                    StreamReader file = File.OpenText(@"C:\1\simple1.txt");
                    string read;
                    read = null;
                    while ((read = file.ReadLine()) != null)
                    {
                        Console.WriteLine(read);
                        Console.WriteLine();
                    }
                    file.Close();
 
                }
                else
                {
                    Console.WriteLine("Faila net, ");
                }
                Console.WriteLine("Выерите пункт меню.");
                Console.WriteLine("1.Ваше имя");
                Console.WriteLine("2.Ваш возраст");
                Console.WriteLine("3.Ваше значение");
                Console.WriteLine("4.Выход");
                chel = int.Parse(Console.ReadLine());
 
                switch (chel)
                {
                    case 1:
                        Console.Write("Введите ваше имя: ");
                        string userName = Console.ReadLine();
                        Console.Clear();
                        Console.WriteLine("Ваше имя записано!");
                        StreamWriter record1 = new StreamWriter(@"C:\1\simple1.txt", true);
                        {
                            record1.WriteLine("Ваше имя: {0}", userName);
                        }
                        record1.Close();
                        break;
                    case 2:
                        Console.Write("Введите ваш возраст: ");
                        string userAge = Console.ReadLine();
                        byte userAge2;
                        userAge2 = byte.Parse(userAge);
                        Console.Clear();
                        Console.WriteLine("Ваш возраст записан!");
                        StreamWriter record2 = new StreamWriter(@"C:\1\simple1.txt", true);
                        {
                            record2.WriteLine("Ваш возраст: {0}", userAge);
                        }
                        record2.Close();
                        break;
                    case 3:
                        Console.Write("Pass? ");
                        string userPass = Console.ReadLine();
                        bool userPassParse;
                        userPassParse = bool.Parse(userPass);
                        Console.Clear();
                        Console.WriteLine("Ваше значение записано!");
                        StreamWriter record3 = new StreamWriter(@"C:\1\simple1.txt", true);
                        {
                            record3.WriteLine("Ваше значение: {0}", userPass);
                        }
                        record3.Close();
                        break;
                    case 4:
                        Console.WriteLine("Пока");
                        Console.ReadKey();
                        break;
                    case 5:
 
                    default:
                        Console.WriteLine("Вы что-то другое нажали");
                        Console.ReadLine();
                        Console.Clear();
                        break;
 
                }
            }
            while (chel != 4);
        }
    }
}
В итоге не могу сделать так,чтоб не появлялось лишних строк.Т.е. если я ввел имя первый раз,то при вводе его второй раз оно должно заменятся на введенное второй раз.И так со всеми тремя пунтками.

Решение задачи: «Создать консольное приложение, которое записывает в лог-файл три введенных пользователем параметра»

textual
Листинг программы
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
 
namespace ConsoleApplication5
{
    class Program
    {
        static void Main(string[] args)
        {
            if (File.Exists(@"C:\123.txt"))
            {
                string name = null;
                string age = null;
                string sex = null;
 
                FileStream fs = new FileStream(@"C:\123.txt", FileMode.Open);
                StreamReader sr = new StreamReader(fs, Encoding.Default);
 
                while (sr.Peek() != -1)
                {
                    name = sr.ReadLine();
                    age = sr.ReadLine();
                    sex = sr.ReadLine();
                }
 
                sr.Close();
                fs.Close();
 
                Console.WriteLine("Имя: {0}, возраст: {1}, мужчина: {2}",
                                  name, age, sex);
                Console.Read();
            }
            else
            {
                string name = null;
                string age = null;
                string sex = null;
 
                Console.WriteLine("Введите имя: ");
                name = Console.ReadLine();
                Console.WriteLine("Введите возраст: ");
                age = Console.ReadLine();
                Console.WriteLine("Введите пол (true-мужчина, false-женщина): ");
                sex = Console.ReadLine();
 
                FileStream fs = new FileStream(@"C:\123.txt", FileMode.Create);
                StreamWriter sw = new StreamWriter(fs);
                sw.Write(name+ "\n");
                sw.Write(age + "\n");
                sw.Write(sex + "\n");
 
                sw.Close();
                fs.Close();
 
                Console.WriteLine("Данные сохранены в файле");
                Console.Read();
            }
        }
    }
}

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


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

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

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