Program.cs 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. using ConsoleApp1.model;
  2. using ConsoleApp1.read;
  3. using ConsoleApp1.write;
  4. using System;
  5. using System.Collections.Generic;
  6. using System.Xml.Linq;
  7. List<Person> people = new List<Person>
  8. {
  9. new Person { Name = "Alice", Age = 25 },
  10. new Person { Name = "Bob", Age = 30 },
  11. new Person { Name = "Charlie", Age = 35 }
  12. };
  13. List<Product> products = new List<Product>
  14. {
  15. new Product { Name = "Apple", Price = 1.99 },
  16. new Product { Name = "Banana", Price = 0.99 },
  17. new Product { Name = "Orange", Price = 2.49 }
  18. };
  19. void PrintListPerson(List<Person> people)
  20. {
  21. foreach (var person in people)
  22. {
  23. Console.WriteLine($"Имя: {person.Name}, Возраст: {person.Age}");
  24. }
  25. }
  26. void PrintListProduct(List<Product> products)
  27. {
  28. foreach (var product in products)
  29. {
  30. Console.WriteLine($"Продукт: {product.Name}, Цена: {product.Price}");
  31. }
  32. }
  33. Console.WriteLine("Исходные данные:");
  34. PrintListPerson(people);
  35. PrintListProduct(products);
  36. Console.WriteLine("\nВыберите действие:");
  37. Console.WriteLine("1. Записать данные в файл \n2. Считать данные из файла");
  38. WriteToCSV writeToCSV = new WriteToCSV();
  39. ReadToCSV readToCSV = new ReadToCSV();
  40. int flag = int.Parse(Console.ReadLine());
  41. string MeStruct;
  42. switch (flag)
  43. {
  44. case 1:
  45. Console.WriteLine("Выберите имя файла для записи: ");
  46. string fileNameWrite = Console.ReadLine();
  47. Console.WriteLine("Выберите тип файла (CSV\r\nJSON\r\nXML\r\nYAML): ");
  48. string fileTypeWrite = Console.ReadLine();
  49. string path = fileNameWrite + fileTypeWrite;
  50. Console.WriteLine("Напишите какую структуру вы хотите записать(Person/Product): ");
  51. MeStruct = Console.ReadLine();
  52. if (MeStruct == "Person")
  53. {
  54. writeToCSV.ExportToCsv(people, path);
  55. Console.WriteLine("CSV успешно записан");
  56. }
  57. else if (MeStruct == "Product")
  58. {
  59. writeToCSV.ExportToCsv(products, path);
  60. Console.WriteLine("CSV успешно записан");
  61. }
  62. else { Console.WriteLine("Выбрана несуществующая структура"); }
  63. break;
  64. case 2:
  65. Console.WriteLine("Выберите имя файла для считывания: ");
  66. fileNameWrite = Console.ReadLine();
  67. Console.WriteLine("Выберите тип файла (CSV\r\nJSON\r\nXML\r\nYAML): ");
  68. fileTypeWrite = Console.ReadLine();
  69. path = fileNameWrite + fileTypeWrite;
  70. Console.WriteLine("Напишите какую структуру вы хотите записать(Person/Product): ");
  71. MeStruct = Console.ReadLine();
  72. if (MeStruct == "Person")
  73. {
  74. people.Clear();
  75. people = readToCSV.ImportToCsv<Person>(path);
  76. PrintListPerson(people);
  77. }
  78. else if (MeStruct == "Product")
  79. {
  80. products.Clear();
  81. products = readToCSV.ImportToCsv<Product>(path);
  82. PrintListProduct(products);
  83. }
  84. else { Console.WriteLine("Выбрана несуществующая структура"); }
  85. break;
  86. }