Прочитать гигабайт текста в массив строк для сортировки - C#

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

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

Использую такую строку кода:
String[] s = File.ReadAllLines("1.txt", Encoding.Default);
Но не загружает гигабайтный текстовик, хотя на компе есть память. Может дело в том, что комп x32? На x64 будет работать? Если не будет, подскажите как сделать, чтоб загружало такие файлы

Решение задачи: «Прочитать гигабайт текста в массив строк для сортировки»

textual
Листинг программы
string[] s = new string[400000];
            int i = 0;
            int k = 0;
            FileStream fs = new FileStream("1.txt", FileMode.Open, FileAccess.Read);
            StreamReader sr = new StreamReader(fs);
            string str;
            while ((str = sr.ReadLine()) != null)
            {
                s[i++] = str;
                if (i==400000)
                {
                    s = s.AsParallel().OrderBy(x => x).ToArray();
                    File.WriteAllLines((k++).ToString()+"-temp.txt", s);
                    i = 0;
                }
            }

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


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

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

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