Отсортированный массив ввести обратно в файл
Не пойму как записать обратно в файл отсортированный массив.
var lines = File.ReadAllLines(@"C:\text.txt");
Console.WriteLine("Для сортировки по возрастанию введите 'asc'");
string choice = Console.ReadLine();
var result = lines.OrderBy(int.Parse).Select(int.Parse).ToArray();
if (choice != "asc")
{
Array.Reverse(result);
File.WriteAllLines(@"C:\text.txt",result[]); // не работает!
}
Console.WriteLine(String.Join(" ", result));
Ответы (1 шт):
Автор решения: aepot
→ Ссылка
Массив в IEnumerable, потом снова в массив при всем при том, что WriteAllLines может записать IEnumerable, правда только строк, а не чисел.
Давайте немного оптимизируем.
var nums = File.ReadAllLines(@"C:\text.txt").Select(int.Parse);
Console.WriteLine("Для сортировки по возрастанию введите 'asc'");
string choice = Console.ReadLine();
var result = choice == "asc" ? nums.OrderBy(x => x) : nums.OrderByDescending(x => x);
File.WriteAllLines(@"C:\text.txt", result.Select(x => x.ToString()));
Console.WriteLine(string.Join(" ", result));