![]() |
|
Модераторы: volvo877, Snowy, MetalFan |
![]()
|
|
| archer777 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 24.11.2011 Репутация: нет Всего: нет |
Здравствуйте!
Нужно написать программу, которая будет открывать по очереди каждый файл(файлы имеют разные названия) в определенной папке и искать в ней слова(например:после name до f выписать слово). Файлы все в формате txt. У меня получилось задать поиск, но проблема в том, что в моей программе я должен сам вводить путь к файлу, что неправильно(программа должна по очереди перебирать все файлы в конкретной папке). Заранее благодарю!
Это сообщение отредактировал(а) MetalFan - 13.12.2011, 12:04 |
|||
|
||||
| ФедосеевПавел |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 291 Регистрация: 7.2.2009 Репутация: 2 Всего: 10 |
Посмотри в сторону поиска файлов функциями FindFirst и FindNext (модуль DOS или WinDOS). Один из параметров этих функций - маска поиска файлов (например 'c:\Temp\*.txt').
Кроме справки поищи примеры и на форуме. |
|||
|
||||
| archer777 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 24.11.2011 Репутация: нет Всего: нет |
Я уже думал об этом, но вот такая проблема. Программа у меня работает в паскаль abc, когда я подключаю модуль windos, она пишет, что модуль не найден. В TP7 программа вообще не работает, пишет file not found и указывает на строчку reset(f), что делать не знаю...
|
|||
|
||||
| Keeper89 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2580 Регистрация: 26.2.2009 Репутация: нет Всего: 58 |
Так под какой все-таки в итоге компилятор нужно сделать?
|
|||
|
||||
| ФедосеевПавел |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 291 Регистрация: 7.2.2009 Репутация: 2 Всего: 10 |
Ничего про PascalABC сказать не могу. Думаю, что модуль может называться как угодно - нужно смотреть в документации.
В TP7
Во FreePascal нужно будет в конце ещё добавить FindClose(DirInfo). Пользуйся встроенным отладчиком и смотри значения переменных (смотри как для TP7 и FPC) - легче понять что-где-когда косячит. Это сообщение отредактировал(а) ФедосеевПавел - 11.12.2011, 09:00 |
|||
|
||||
| archer777 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 24.11.2011 Репутация: нет Всего: нет |
Я посмотрел, dos на abc - utils, но при запуске пишет неизвестный идентификатор FileFirst. Почему пытаюсь сделать в abc, а не в tp7,потому что 1)когда программа выписывает из файла слова, то многие слова на русском, и паскаль выписывает какие-то символы,2)и он пишет, что файл не найден, хотя он там есть. Поэтому прошу помочь на abc.
|
|||
|
||||
| volvo877 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2073 Регистрация: 15.11.2004 Репутация: 2 Всего: 116 |
Не FileFirst, а FindFirstFile:
|
|||
|
||||
| ФедосеевПавел |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 291 Регистрация: 7.2.2009 Репутация: 2 Всего: 10 |
Только что побывал на http://pascalabc.net - тоже не смог обнаружить подобие поиска файлов по маске.
Но во время поиска на их форуме по ключу "findfirst" появились две ссылки 1)раз, 2)два. Покопаешься - разберёшься. Если решишь реализовать в FPC или TP7, то придёться перекодировать txt-файлы в 866 (=OEM, =DOS) кодировку в любом текстовом редакторе или подготовить эти файлы в самой среде разработки (IDE). Да, чуть не забыл... Ведь программа-то у тебя консольная, а значит вывод результатов будет в консольное (как бы DOS) окно в кодировке 866 (=OEM=DOS) вне зависимости от компилятора. Т.е. в любом случае исходные файлы нужно перекодировать из Win-1251 (ANSI) в DOS-866 (OEM). ------------- Увидел сообщение уважаемого модератора volvo877. А я наверное плохо искал и не нашел на официальном сайте ни модуля utils, ни функции FindFirstFile... Это сообщение отредактировал(а) ФедосеевПавел - 11.12.2011, 19:42 |
|||
|
||||
| archer777 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 24.11.2011 Репутация: нет Всего: нет |
Спасибо volvo877 и ФедосеевПавел, программа работает так, как хотел!)
|
|||
|
||||
![]()
|
| Правила форума "Delphi" | |
|
|
Запрещается! 1. Обсуждать и делится взломанными компонентами или программным обеспечением 2. Публиковать ссылки на варез 3. Оффтопить
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, THandle, Rrader, volvo877. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Object Pascal: кроссплатформенные технологии | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |