Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.69/13: Рейтинг темы: голосов - 13, средняя оценка - 4.69
 Аватар для Vinemax
149 / 117 / 10
Регистрация: 12.09.2011
Сообщений: 785

Подсчет количества одинаковых строк в текстовом файле

16.05.2020, 00:32. Показов 2891. Ответов 25
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет всем!

Подскажите, пожалуйста, возможно ли средствами .NET (C# или VB) в текстовом файле с огромным количеством строк посчитать все количества повторений каждой строки по типу: строка такая-то - 10 раз, строка такая-то - 27 раз и так далее? Кроме того, необходимо удалить все повторения той или иной строки. Очень важно, чтобы сам исходный текстовый файл не загружался в память по типу File.ReadAllLines. Целый день бьюсь и ничего толкового не получается. Возможно вообще такое без загрузки всего файла в память?

Спасибо!

Добавлено через 4 минуты
Может быть как-то возможно для каждой строки из файла формировать какое-то уникальное число? Есть в .NET такая функция?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
16.05.2020, 00:32
Ответы с готовыми решениями:

Файлы, подсчет количества слов в текстовом файле
Ниже код, нужно Добавить обработку ошибки , если допустим не хватает памяти, и чтобы из текстового файла бралось 1 слово и заносилось в...

Определение количества строк в текстовом файле и считывание заданной строки
Как определить количество строк в файле .txt и считать n-ную строку?

Подсчёт количества строк в текстовом файле
Создать текстовый файл с произвольным текстом и через меню предусмотреть следующие действия: 1) просмотр содержимого файла; 2)...

25
Модератор
Эксперт .NET
 Аватар для Yury Komar
4374 / 3444 / 512
Регистрация: 27.01.2014
Сообщений: 6,267
17.05.2020, 12:45
Студворк — интернет-сервис помощи студентам
sldp, нет, генерация файла тут не при чем. Задача - прочитать этот сгенерированный файл получая количество всех вхождений каждой строки (инфу показать пользователю) и затем, финальная стадия - Сохранение в другой файл только уникальные строки, без дубликатов.

Данное действо реализовать просто, но вопрос именно в том, как это сделать максимально быстро, а не ждать 13-15 часов на прогон 190,000,000 строк... и сравнение с теми, что уже прогнали и отобрали уникальные...

как-то так. Приоритет - СКОРОСТЬ.

Добавлено через 2 минуты
на простой (пустой) прогон всех строк у меня тратится не более 1,5 - 2 минут, а расчеты на прогон с чтением и составлением того, что требуется в десятки часов...

Надо думать...
1
310 / 318 / 119
Регистрация: 29.10.2011
Сообщений: 1,006
17.05.2020, 13:48
Yury Komar, Я понимаю, но все это больше походит не на реальную задачу, а на задачку из собеседования или из олимпиады по ИТ/комбинаторике, где нужно именно благодаря логике дойти до решения, а не брутфорсом
Особенно условия, что числа в строке идут в порядке возрастания, что итоговые строки должны быть в порядке возрастания - это все еще больше наталкивает на мысль, что это именно задача а-ля олимпиадная по комбинаторике или с собеседования, где важен именно сам подход в решении, а не результат в виде отфильтрованных строк
1
Модератор
Эксперт .NET
 Аватар для Yury Komar
4374 / 3444 / 512
Регистрация: 27.01.2014
Сообщений: 6,267
17.05.2020, 16:19
sldp, я думаю, не важно где это будет применяться. Человек задал вопрос, а реальное применение этого мне да и многим тут на форуме - не очень важно, пусть то будет олимпиада или лаба.
1
310 / 318 / 119
Регистрация: 29.10.2011
Сообщений: 1,006
18.05.2020, 10:28
Yury Komar, Не соглашусь. От источника этой задачи зависит ее решение. Пока это выглядит, как если решать квадратное уравнение с помощью цикла прогоняя все возможные х вместо нахождения дискриминант и пр.
1
 Аватар для Vinemax
149 / 117 / 10
Регистрация: 12.09.2011
Сообщений: 785
21.05.2020, 09:38  [ТС]
Yury Komar, в общем решил я кое-как свою задачу путем сортировки по алфавиту... То есть, программа получает все возможные комбинации, записывая их в файл, как сейчас, только в файл записывает не числа, а символы, соответствующие ASCII-кодам этих чисел (7 символов на строку), затем утилитой sort.exe сортирует этот файл и на третьем этапе единожды прогоняет этот файл, подсчитывая все повторения. На все эти операции с более чем 200 миллионами комбинаций мой компьютер затрачивает 42 минуты. Это вполне терпимо. Если интересен код, вот...
Вложения
Тип файла: zip Combinations.zip (1.24 Мб, 13 просмотров)
1
Модератор
Эксперт .NET
 Аватар для Yury Komar
4374 / 3444 / 512
Регистрация: 27.01.2014
Сообщений: 6,267
21.05.2020, 18:29
Vinemax, Справился? Отлично )
да, когда забрал, посмотрю, спасибо, что поделился.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
21.05.2020, 18:29

Подсчет количества строк в текстовом файле
Здравствуйте, есть 2 файлика Excel. Необходимо написать скрипт, который подсчитывал бы кол-во записей в 1 файлике и вставлял такое кол-во...

Подсчет количества строк в текстовом файле, имя которого задано первым параметром КФ. Проверить наличие указа
Подсчет количества строк в текстовом файле, имя которого задано первым параметром КФ. Проверить наличие указанного файла и вывести...

Подсчет количества слов в текстовом файле
Подсчет количества слов в текстовом файле, содержащем целые числа и слова русского и английского языков. Считать, что слова в файле...

Подсчет количества слов в текстовом файле
Дан текстовый файл. Составить программу, подсчитывающую количество слов в файле.

Подсчет количества абзацев в текстовом файле
здравствуйте!!помогите пожалуйста решить задачу!!мне дан текстовый файл,нужно посчитать в нем количество абзацев(абзац-это или пустая...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
26
Ответ Создать тему
Новые блоги и статьи
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru