[C++] Работа с файлами17.06.2010, 21:09. Показов 35446. Ответов 74
Метки нет (Все метки)
Задача: Есть файлы, которые надо обработать:
1.просканировать директории на наличие файлов расширения *.TXT 2.сохранять список путей к файлам в booklist.txt (для дальнейшей работы) 3.вывести booklist.txt на экран Добавлено через 41 минуту пытался найти похожие или хоть какие-то программы работы с файлами нашел вот эту работает с файлами через аргумент и выводит дважды содержание файла:
------------------------------------ Посоветуйте что можно сделать, я в С++ только начал
1
|
||||||
| 17.06.2010, 21:09 | |
|
Ответы с готовыми решениями:
74
работа с файлами Работа с файлами |
|
3606 / 2746 / 356
Регистрация: 11.03.2009
Сообщений: 6,317
|
||||||||||||
| 21.06.2010, 10:12 | ||||||||||||
1
|
||||||||||||
| 21.06.2010, 20:35 [ТС] | |
|
Хотел написать программу удаления коментариев в С++ исходных файлах.
построчных // коментарий многострочных /* коментарий */ у меня тоже возник вопрос какие есть функции для работы со строками? как вообще лучше работать с файлом какие типы (char я так понимаю) при этом используются? я впринципе представляю себе алгоритм: 1.открыть файл в аргументах для функции передавать 1-имя файла, 2-строку которую изменить (// и /*), 3-строку на что изменить(если пусто тоесть удалить) 2.прочитать его в переменную (как лучше читать по строчно или нет? если большой файл то как быть?) 3.найти в файле совпадения функция поиска по файлу при нахождении 2строки (// и /*) искать конец (endline или */) и возвращать номера символов первого найденного и последнего (/* */) и после удалить их
0
|
|
|
3606 / 2746 / 356
Регистрация: 11.03.2009
Сообщений: 6,317
|
||||||
| 21.06.2010, 23:05 | ||||||
|
Файл лучше обрабатывать посимвольно
Evg же довольно подробно описал алгоритм https://www.cyberforum.ru/post165944.html Добавлено через 1 час 29 минут На ночь глядя мой воспаленный мозг родил такой код Он не безупречен.
1
|
||||||
| 22.06.2010, 00:03 [ТС] | ||
|
Хочешь разобраться в коде - попробуй его откоментируй. пробовал откоментировать до цепочки if условий дальше немного не понятно что в себе хранят переменные f_c, f_cplus, f_com
а так впринципе код работает на отлично, но оставляет дыры на многострочных коментариях в файле nocom.cpp
0
|
||
|
3606 / 2746 / 356
Регистрация: 11.03.2009
Сообщений: 6,317
|
|
| 22.06.2010, 00:08 | |
|
f_c, f_cplus, f_com это флаги
f_com - флаг комментария f_c - флак комментария в стиле Си f_cplus - флаг комментария в стиле С++
1
|
|
|
3606 / 2746 / 356
Регистрация: 11.03.2009
Сообщений: 6,317
|
|
| 22.06.2010, 12:22 | |
|
Если придумаешь как, почему бы и нет.)
1
|
|
| 22.06.2010, 12:32 [ТС] | |
|
Попробовал скомпилированной программой обработать тот же исходник отрезало пол файла заголовков... почему?
как можно изменить программу чтобы она реагировала на звездочку как на много символов после start /* и */ до end соотвественно, а то с флагами немного не понятно.
0
|
|
| 22.06.2010, 12:50 [ТС] | |
|
Я кажется догадываюсь... оно читает заголовки cpp и пытается их выполнить
Программу понял так: если встречается в буфере коментарии то оно возвращает 0 до тех пор пока не встречает конец коментариев. а как бы сделать так чтобы оно не возвращало при удалении несколько строчек многострочного коментария а пропускало до конца? для этого надо читать файл и если встречается коментарий- возвращать позицию начала коментария и пропускать до тех пор пока не встретиться позиция конечного?
0
|
|
|
3606 / 2746 / 356
Регистрация: 11.03.2009
Сообщений: 6,317
|
||||||||
| 22.06.2010, 13:01 | ||||||||
1
|
||||||||
| 22.06.2010, 13:13 [ТС] | |||||||
|
да действительно, заменил все вышло.
0
|
|||||||
|
3606 / 2746 / 356
Регистрация: 11.03.2009
Сообщений: 6,317
|
|||||||
| 22.06.2010, 13:55 | |||||||
|
Вот вариант со строками, получился еще больше, но если комментарий в отдельной строке, пропускает всю строку.
1
|
|||||||
| 22.06.2010, 20:23 [ТС] | ||||||
0
|
||||||
|
3606 / 2746 / 356
Регистрация: 11.03.2009
Сообщений: 6,317
|
|
| 22.06.2010, 21:18 | |
|
1
|
|
| 22.06.2010, 21:37 [ТС] | |||||||||||
0
|
|||||||||||
|
3606 / 2746 / 356
Регистрация: 11.03.2009
Сообщений: 6,317
|
|||||||
| 22.06.2010, 21:40 | |||||||
1
|
|||||||
| 22.06.2010, 21:49 [ТС] | ||||||
0
|
||||||
|
3606 / 2746 / 356
Регистрация: 11.03.2009
Сообщений: 6,317
|
||||||
| 22.06.2010, 21:58 | ||||||
1
|
||||||
|
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
|
|
| 23.06.2010, 08:26 | |
Сообщение было отмечено как решение
Решение
ТС, есл хочешь работоспособный мой код, стукни в личку. Года 3 назад я его выкладывал на одном из форумов. Не лень будет, дам координаты, зарегаешься, найдёшь. А меня там забанили.
1
|
|
| 23.06.2010, 08:26 | |
|
Работа с файлами Работа с файлами
работа с файлами
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
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: Математический инвариант ОДУ и рок Стивов-бонобо
Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
|