Сортировка строк в текстовом файле - C#

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

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

Здравствуйте, необходимо решить следующую задачу: Есть текстовый файл в котором данные хранятся в следующем виде -50.00 -50.00 xxxx xxxx xxxx xxxx xxxx -45.00 -50.00 xxxx xxxx xxxx xxxx xxxx ............................................................. 0.00 -50.00 xxxx xxxx xxxx xxxx xxxx 5.00 -50.00 xxxx xxxx xxxx xxxx xxxx ............................................................. 45.00 -50.00 xxxx xxxx xxxx xxxx xxxx 50.00 -50.00 xxxx xxxx xxxx xxxx xxxx и далее -50.00 -45.00 xxxx xxxx xxxx xxxx xxxx ............................................................. ............................................................. 50.00 50.00 xxxx xxxx xxxx xxxx xxxx Дело в том что все эти строки хранятся в несортированном виде, а необходимо их отсортировать т.е. чтобы сначала шли строки у которых второй элемент равен +50, а первый от -50 до +50 и так далее. Иногда возможны пропуски т.е. например строки 50 50 ххххх хххх хххх может не существовать а последний вариант 45 50 хххх хххх хххх Сортировку первичную вроде понятно как делать( по крайней мере в теории): создаем массив массивов и сортируем по второму элементу, а вот как потом отсортировать по первому не понятно...

Решение задачи: «Сортировка строк в текстовом файле»

textual
Листинг программы
var result = File.ReadAllLines(@"c:\c#\1.txt").OrderByDescending(x => double.Parse(x.Split(new char []{' ',' '})[6],System.Globalization.CultureInfo.InvariantCulture))
                .ThenBy(x => double.Parse(x.Split(new char[]{' ',' ')[1], System.Globalization.CultureInfo.InvariantCulture)).ToList();
            result.ForEach(Console.WriteLine);
            Console.ReadKey(true);

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


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

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

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