|
29 / 29 / 3
Регистрация: 23.09.2010
Сообщений: 203
|
|
Как посчитать количество символов в файле?26.10.2010, 23:15. Показов 46078. Ответов 23
Метки нет (Все метки)
доброго времени суток, форумчане!
пусть есть текстовый файл Out.txt. необходимо посчитать количество символов в файле. подскажите, как это сделать?
0
|
|
| 26.10.2010, 23:15 | |
|
Ответы с готовыми решениями:
23
Как посчитать количество удаленных символов со строки
Посчитать количество символов в файле docx |
|
129 / 126 / 22
Регистрация: 23.06.2009
Сообщений: 700
|
||||||
| 27.10.2010, 03:01 | ||||||
1
|
||||||
|
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
||||||
| 27.10.2010, 12:04 | ||||||
Сообщение было отмечено как решение
Решение
IrishaIrinaChe, можно поступить вот так:
Не по теме: На всякий случай, напомню, что перевод строки считается как два символа...
3
|
||||||
|
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
||||||
| 27.10.2010, 14:04 | ||||||
|
Sasha, ну тут два варианта...
1. Открыть файл и читать посимвольно. Когда встретится символ '\n' или '\r\n' инкрементировать переменную (количество строк). Советую попробовать - набьёте руку в области работы с файлами. 2. А можно поступить так:
2
|
||||||
|
1090 / 588 / 121
Регистрация: 11.11.2008
Сообщений: 1,544
|
|
| 27.10.2010, 14:11 | |
|
не нравится мне все это...
учитывая что sizeof(char) равен 1, ваши решения сводятся к частному случаю, к вычислению размера файла, и естественно в байтах, а не символах как таковых... и раз уж мы говорим о текстовых(файлах) то отмазка про то что перевод строки занимает пару байт не принимается... постановка задачи намекает именно на печатные символы. в общем исправляйтесь, господа. p.s. + не забывайте про юникод и т.д.
0
|
|
|
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
||||
| 27.10.2010, 14:42 | ||||
|
Так вот... если помните, там имеются управляющие символы. Они тоже имеют право присутствовать в файле и точно также увеличивают его объём. Вы же намекаете на то, что хотите отфильтровать подобные символы и указать только количество "печатных" символов (именно эти символы можно увидеть на экране без дополнительных преобразований). Вы каждый символ будете сверять с "управляющей последовательностью"? ![]() Подумайте об этом "на досуге". Универсального метода для чтения и тех, и других файлов - нет. Нужно только самому, в случае необходимости, писать алгоритм для переключения между вариантами. Т.к. речь здесь почти всегда идёт о задачах, заданных в рамках учебного процесса, или о создании "конфигурационных" файлов, то рассматривать юникод - приведёт к путанице, ИМХО
1
|
||||
|
1090 / 588 / 121
Регистрация: 11.11.2008
Сообщений: 1,544
|
|||||||
| 27.10.2010, 15:51 | |||||||
|
раз Вы это понимаете, то не следует давать неполные ответы и ответы для лентяев, раз люди задают такие (опять же ленивые) вопросы, то первым делом и надо давать им отводки к ASCII-таблице, управляющим символам, возможности их фильтрации, "двухбайтовым представлениям символов" и т.д. и раскрывать смысл хотя бы как написал petruchodd, а не прятаться за непонятным
извиняюсь за оффтоп
0
|
|||||||
|
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
|||
| 27.10.2010, 16:13 | |||
когда тема пошла "в глубину" - я указал, что нужно читать файл и анализировать содержимое.Однако объяснить всё с нуля в каждой теме - просто невозможно. Так можно и "лучшие годы жизни потратить" (с). Я всё же рассчитываю, что минимальные знания должны быть у каждого человека, связанного с программированием.
0
|
|||
|
29 / 29 / 3
Регистрация: 23.09.2010
Сообщений: 203
|
||
| 27.10.2010, 17:09 [ТС] | ||
|
0
|
||
|
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
||||||
| 27.10.2010, 17:25 | ||||||
|
IrishaIrinaChe, а вы добавили в проект:
0
|
||||||
|
29 / 29 / 3
Регистрация: 23.09.2010
Сообщений: 203
|
|
| 27.10.2010, 17:40 [ТС] | |
|
MikeSoft, fstream подключён.
Добавлено через 7 минут может, проблема в том, что я открываю файл через fopen?
0
|
|
|
1090 / 588 / 121
Регистрация: 11.11.2008
Сообщений: 1,544
|
||
| 27.10.2010, 17:58 | ||
|
а in это вообще из VC однако, попробуйте использовать аналоги cin/cout или подключить iostream.h или io.h вообще же для подсчитывания количества символов не обязательно загонять их в массив, тратить на это ресурсы, достаточно, например, просто прочитать файл посимвольно, инкрементируя счетчик. в целом мне кажется развели слишком много шума из ничего, на подобные вопросы надо либо сразу посылать в faq и читать книжки либо отмалчиваться, чтобы человек сам призадумался...
0
|
||
|
29 / 29 / 3
Регистрация: 23.09.2010
Сообщений: 203
|
|
| 27.10.2010, 18:02 [ТС] | |
|
я поняла. надо было использовать putc(). всем спасибо)
0
|
|
|
1090 / 588 / 121
Регистрация: 11.11.2008
Сообщений: 1,544
|
|
| 27.10.2010, 18:07 | |
|
надо было использовать fgetc
0
|
|
|
29 / 29 / 3
Регистрация: 23.09.2010
Сообщений: 203
|
|
| 27.10.2010, 18:26 [ТС] | |
|
AntonChik, с fgetс не компилировалось.
0
|
|
|
47 / 12 / 4
Регистрация: 25.02.2010
Сообщений: 259
|
|
| 09.11.2010, 12:15 | |
|
0
|
|
|
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
||
| 09.11.2010, 12:25 | ||
|
Я же явно на примере показал, что значение хранится в sl->Count (это и так целочисленный тип)
0
|
||
|
47 / 12 / 4
Регистрация: 25.02.2010
Сообщений: 259
|
|
| 09.11.2010, 12:28 | |
|
согласен прощолкал ночь не спал (( глюки пригают TStringList в AnsiString как ?
0
|
|
|
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
|
| 09.11.2010, 12:31 | |
|
sl->Text - полный текст, без изменений.
sl->CommaText - текст, в котором строки разделены запятой. sl->Strings[i] - отдельная строка (под номером i).
0
|
|
| 09.11.2010, 12:31 | |
|
Помогаю со студенческими работами здесь
20
Посчитать количество символов в Memo, не используя Length Посчитать количество символов в кажой строке файла. Как посчитать количество знаков в конкретном абзаце? Как посчитать количество дней между датами Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|
|
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение:
В этой книге («Подход, основанный на вариантах использования») Ивар утверждает,
что архитектура программного обеспечения — это
структуры,. . .
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем.
. . .
|