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

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

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

Здравствуйте.Есть задание - "Создать консольное приложение, которое записывает в лог-файл три введенных пользователем параметра (одно число, одну строку и одно значение bool). При запуске приложение загружает содержимое файла и отображает пользователю значения сохраненных ранее параметров. Если файла нет, то вывести соответствующее сообщение. Пользователь вводит значения параметров в произвольном порядке, для чего организовать меню. Данные сохраняются в файл в текстовом виде по одному параметру на строку ("лишних" строк быть не должно) в том порядке, в котором пользователь вводил их в консоль." Вот сам код,который получился:
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.IO;
  6. namespace ConsoleApplication1
  7. {
  8. class Program
  9. {
  10. static void Main(string[] args)
  11. {
  12. int chel;
  13. do
  14. {
  15. if (File.Exists(@"C:\1\simple1.txt"))
  16. {
  17. StreamReader file = File.OpenText(@"C:\1\simple1.txt");
  18. string read;
  19. read = null;
  20. while ((read = file.ReadLine()) != null)
  21. {
  22. Console.WriteLine(read);
  23. Console.WriteLine();
  24. }
  25. file.Close();
  26. }
  27. else
  28. {
  29. Console.WriteLine("Faila net, ");
  30. }
  31. Console.WriteLine("Выерите пункт меню.");
  32. Console.WriteLine("1.Ваше имя");
  33. Console.WriteLine("2.Ваш возраст");
  34. Console.WriteLine("3.Ваше значение");
  35. Console.WriteLine("4.Выход");
  36. chel = int.Parse(Console.ReadLine());
  37. switch (chel)
  38. {
  39. case 1:
  40. Console.Write("Введите ваше имя: ");
  41. string userName = Console.ReadLine();
  42. Console.Clear();
  43. Console.WriteLine("Ваше имя записано!");
  44. StreamWriter record1 = new StreamWriter(@"C:\1\simple1.txt", true);
  45. {
  46. record1.WriteLine("Ваше имя: {0}", userName);
  47. }
  48. record1.Close();
  49. break;
  50. case 2:
  51. Console.Write("Введите ваш возраст: ");
  52. string userAge = Console.ReadLine();
  53. byte userAge2;
  54. userAge2 = byte.Parse(userAge);
  55. Console.Clear();
  56. Console.WriteLine("Ваш возраст записан!");
  57. StreamWriter record2 = new StreamWriter(@"C:\1\simple1.txt", true);
  58. {
  59. record2.WriteLine("Ваш возраст: {0}", userAge);
  60. }
  61. record2.Close();
  62. break;
  63. case 3:
  64. Console.Write("Pass? ");
  65. string userPass = Console.ReadLine();
  66. bool userPassParse;
  67. userPassParse = bool.Parse(userPass);
  68. Console.Clear();
  69. Console.WriteLine("Ваше значение записано!");
  70. StreamWriter record3 = new StreamWriter(@"C:\1\simple1.txt", true);
  71. {
  72. record3.WriteLine("Ваше значение: {0}", userPass);
  73. }
  74. record3.Close();
  75. break;
  76. case 4:
  77. Console.WriteLine("Пока");
  78. Console.ReadKey();
  79. break;
  80. case 5:
  81. default:
  82. Console.WriteLine("Вы что-то другое нажали");
  83. Console.ReadLine();
  84. Console.Clear();
  85. break;
  86. }
  87. }
  88. while (chel != 4);
  89. }
  90. }
  91. }
В итоге не могу сделать так,чтоб не появлялось лишних строк.Т.е. если я ввел имя первый раз,то при вводе его второй раз оно должно заменятся на введенное второй раз.И так со всеми тремя пунтками.

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

textual
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.IO;
  6.  
  7. namespace ConsoleApplication5
  8. {
  9.     class Program
  10.     {
  11.         static void Main(string[] args)
  12.         {
  13.             if (File.Exists(@"C:\123.txt"))
  14.             {
  15.                 string name = null;
  16.                 string age = null;
  17.                 string sex = null;
  18.  
  19.                 FileStream fs = new FileStream(@"C:\123.txt", FileMode.Open);
  20.                 StreamReader sr = new StreamReader(fs, Encoding.Default);
  21.  
  22.                 while (sr.Peek() != -1)
  23.                 {
  24.                     name = sr.ReadLine();
  25.                     age = sr.ReadLine();
  26.                     sex = sr.ReadLine();
  27.                 }
  28.  
  29.                 sr.Close();
  30.                 fs.Close();
  31.  
  32.                 Console.WriteLine("Имя: {0}, возраст: {1}, мужчина: {2}",
  33.                                   name, age, sex);
  34.                 Console.Read();
  35.             }
  36.             else
  37.             {
  38.                 string name = null;
  39.                 string age = null;
  40.                 string sex = null;
  41.  
  42.                 Console.WriteLine("Введите имя: ");
  43.                 name = Console.ReadLine();
  44.                 Console.WriteLine("Введите возраст: ");
  45.                 age = Console.ReadLine();
  46.                 Console.WriteLine("Введите пол (true-мужчина, false-женщина): ");
  47.                 sex = Console.ReadLine();
  48.  
  49.                 FileStream fs = new FileStream(@"C:\123.txt", FileMode.Create);
  50.                 StreamWriter sw = new StreamWriter(fs);
  51.                 sw.Write(name+ "\n");
  52.                 sw.Write(age + "\n");
  53.                 sw.Write(sex + "\n");
  54.  
  55.                 sw.Close();
  56.                 fs.Close();
  57.  
  58.                 Console.WriteLine("Данные сохранены в файле");
  59.                 Console.Read();
  60.             }
  61.         }
  62.     }
  63. }

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


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

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

14   голосов , оценка 4.214 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы