![]() 223 / 213 / 80
Регистрация: 26.04.2013
Сообщений: 972
|
||||||
1 | ||||||
Число строк в файле19.11.2013, 23:41. Показов 3827. Ответов 5
Метки нет Все метки)
(
Как можно наиболее быстро подсчитать количество строк в текстовом файле?
Я пользовался следующей конструкцией:
0
|
19.11.2013, 23:41 | |
Ответы с готовыми решениями:
5
|
5499 / 4894 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
|
||||||
20.11.2013, 08:06 | 2 | |||||
![]() Решение
Такую конструкцию не проверял, но наиболее быстро (по сравнению с методами потоков) работают с файлами С-шные функции.
Добавлено через 8 часов 18 минут Сравнил скорость работы с итераторами и такой конструкции:
1) с итераторами - 1.063 сек. 2) С-вариант - 0.906 сек. Файл размером 184 мгб, 10 000 000 строк: 1) с итераторами - 2.10 сек. 2) С-вариант - 1.22 сек.
5
|
![]() |
|
20.11.2013, 08:19 | 3 |
C++ FILE * file = fopen("file.txt", "rt"); fseek(file, 0, SEEK_END); long sz = ftell(file); rewind(file); char c; int cnt = 0; for(int i = 0; i < sz; i++) { c = fgetc(file); if(c == '\n') cnt++; } printf("%d\n", cnt);
0
|
5499 / 4894 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
|
|
20.11.2013, 08:49 | 4 |
programina, на файле размером 86 мгб, 10 000 000 строк: 22.8 сек; 184 мгб, 10 000 000 строк: 29.2 сек. Ещё раньше убедился, что посимвольное чтение значительно медленне работает.
Добавлено через 9 минут Если режим изменить на "rb": 5.38 сек., 11.38 сек.
0
|
5499 / 4894 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
|
|
20.11.2013, 11:22 | 6 |
Я С-шнные функции плохо знаю. Если правильно понял, то чтение символов без присваивания, пропуская '\n'.
Добавлено через 1 час 33 минуты Эта конструкция быстрее, но тоже уступает строковому чтению: на файле размером 86 мгб, 10 000 000 строк: 2.75 сек; 184 мгб, 10 000 000 строк: 3.4 сек.
1
|
20.11.2013, 11:22 | |
Помогаю со студенческими работами здесь
6
Число строк в текстовом файле
Как подсчитать число строк в текстовом файле? Подсчитать в файле число строк и количество букв “a” Подсчитать в текстовом файле число строк, состоящих из одинаковых литер Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
![]() |
Новые блоги и статьи
![]() |
||||
Вопросы на собеседовании по Android
mobDevWorks 14.03.2025
По данным статистики, Android занимает более 70% мирового рынка мобильных операционных систем, что делает платформу привлекательной как для начинающих разработчиков, так и для опытных профессионалов. . . .
|
Лучшие игровые движки для Python
py-thonny 14.03.2025
Python обеспечивает разработчиков игр мощными движками и фреймворками, которые позволяют воплотить практически любую идею — от простой аркады до визуального романа с разветвленным сюжетом. Главное. . .
|
Бессерверный JavaScript: Разработка масштабируемых API с AWS Lambda
run.dev 14.03.2025
Но что такое бессерверные вычисления на самом деле? По сути, это модель облачных вычислений, где разработчик фокусируется исключительно на создании бизнес-логики, не тратя время на настройку. . .
|
Безопасность кода в C++26: Менеджеры ресурсов и висячие ссылки
NullReferenced 14.03.2025
C++ всегда был языком, предоставляющим разработчикам большие возможности и гибкость, но вместе с тем требующим ответственности. Одной из самых коварных проблем даже для опытных программистов остаются. . .
|
smart-agent proper interface settings (2025)
jigi33 14.03.2025
Smart-agent proper interface settings (mart 2025).
(see screenshots to look at "Etalon" ARM)
|
Продвинутые настройки JVM
Javaican 14.03.2025
Стандартные параметры запуска JVM хороши для повседневной разработки, но совершенно недостаточны для высоконагруженных систем. Представьте, что вы запускаете финансовую платформу, обрабатывающую. . .
|
CI/CD для приложений Java с Azure DevOps и Docker
Mr. Docker 14.03.2025
Разработка современных Java-приложений немыслима без системы непрерывной интеграции и доставки (CI/ CD). Azure DevOps в сочетании с Docker предоставляет мощный инструментарий для создания таких. . .
|
Разработка на PHP и интернет вещей (IoT)
Jason-Webb 14.03.2025
Интернет вещей (IoT) произвел настоящую революцию в способах взаимодействия устройств с окружающим миром. В эпоху, когда холодильники сами заказывают молоко, а термостаты учатся вашим привычкам,. . .
|
Node.js 20: Новые возможности и улучшения производительности
Reangularity 14.03.2025
Что же принёс нам релиз Node. js 20? В первую очередь, это существенные улучшения в производительности. Движок V8 получил серьёзные оптимизации, благодаря чему JavaScript-код выполняется заметно. . .
|
Безопасность кластеров Apache Kafka
Javaican 14.03.2025
Apache Kafka стал одним из ключевых компонентов современных архитектур, обрабатывающих потоки данных в режиме реального времени. Его используют тысячи компаний от стартапов до технологических. . .
|