![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
Noname |
![]()
Сообщение
#1
|
Гость ![]() |
В Тр7.0 есть процедура(или функция) поиска файла в _ЗАДАННОМ_ каталоге. А как быть, если заранее не известно в каком каталоге искать этот файл.
|
![]() ![]() |
Alex |
![]()
Сообщение
#2
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 201 Репутация: ![]() ![]() ![]() |
Меня тоже такой вопрос давно мучает.Мож кто поможет.А???
|
mj |
![]()
Сообщение
#3
|
![]() Adminь ![]() ![]() ![]() ![]() Группа: Администраторы Сообщений: 803 Пол: Мужской Реальное имя: Евгений Репутация: ![]() ![]() ![]() |
Чё то я не понял вопроса...
Можно поподробнее? |
Alex |
![]()
Сообщение
#4
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 201 Репутация: ![]() ![]() ![]() |
Вопрос такой.Пусть мы ищем какие-то файлы на диске
C:,но нам не известно какие на нем находятся папки.Мы не знаем их названия.В паскале нет стандартных процедур нахождения имен папок на каком-либо диске.Там есть только нахождения файлов в заданном каталоге.Как только Паскалевскими средствами(без помощи ассемблера,так как я в нем вообще практически не шарю) находить файлы на всем диске(в различных папках,имен которых ты не знаешь).Вот и весь собственно вопрос во всех подробностях(ну или почти что во всех). |
Serg28 |
![]()
Сообщение
#5
|
Гость ![]() |
См. алгоритмы обхода дерева.
|
mj |
![]()
Сообщение
#6
|
![]() Adminь ![]() ![]() ![]() ![]() Группа: Администраторы Сообщений: 803 Пол: Мужской Реальное имя: Евгений Репутация: ![]() ![]() ![]() |
Чё то я не понял, а какже FindFirst и FindNext?
Они как файлы так и папки выдают... Кстати в TurboVision есть очень интересный пример на эту тему... |
Noname |
![]()
Сообщение
#7
|
Гость ![]() |
FindFirst и FindNext функции(или процедуры-точно не помню...), которые позволяют искать файлы в ЗАДАННОМ каталоге, т.е. им нужно передать обязательный параметр типа PathStr(строка-путь), содержащий место поиска... Т.е. если нам нужно найти файл где-то на C: (например, "c:linuxetc"), мы задаем параметр "C:", эта процедура будет искать только в корне, т.е. в "c:linuxetc" ничего не найдет, если даже там лежит нужный нам файл....
|
Alex |
![]()
Сообщение
#8
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 201 Репутация: ![]() ![]() ![]() |
А я про это и говорю!!!Или хотя бы где найти про это скажите!!!
|
Noname |
![]()
Сообщение
#9
|
Гость ![]() |
To admin: Что насчет интересного примера в TurboVision?
|
Noname |
![]()
Сообщение
#10
|
Гость ![]() |
To Serg28: Если ты про DOSShell и команду "cd", то у меня ничего не вышло, т.к. все равно (в общем случае) заранее не знаю какие директории на диске...
|
mj |
![]()
Сообщение
#11
|
![]() Adminь ![]() ![]() ![]() ![]() Группа: Администраторы Сообщений: 803 Пол: Мужской Реальное имя: Евгений Репутация: ![]() ![]() ![]() |
Цитата To admin: Что насчет интересного примера в TurboVision? Файл OUTDIR.PAS |
Vit |
![]()
Сообщение
#12
|
Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 156 Пол: Мужской Репутация: ![]() ![]() ![]() |
Для дельфи это будет выглядеть так:
Procedure ScanDir(Dir:string); Для паскаля изменения будут незначительные -------------------- With the best regards Vit
Все всегда уезжают навсегда. Вернуться невозможно-вместо нас всегда возвращается кто-то другой |
Noname |
![]()
Сообщение
#13
|
Гость ![]() |
To MJ: Где б его еще взять!
|
Noname |
![]()
Сообщение
#14
|
Гость ![]() |
Что, все умерли?
|
___ALex___ |
![]()
Сообщение
#15
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 282 Репутация: ![]() ![]() ![]() |
твоя задача решается с использованием рекурсии
если сильно надо, то я поищу и скину её сюда напиши если надо а то тебе там на дельфийце что-то давали а на обычном пасе почти одно и то же |
Alex |
![]()
Сообщение
#16
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 201 Репутация: ![]() ![]() ![]() |
В уроках на pascal.dax.ru есть пример поиска файла любого через рекурсию в заданном месте(например на диске C:) ну уж чтоб на всех дисках искалось я думаю не сложно сделать.
|
Noname |
![]()
Сообщение
#17
|
Гость ![]() |
Пошли - не помешает. Мона на мыло...
|
Alex |
![]()
Сообщение
#18
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 201 Репутация: ![]() ![]() ![]() |
ЧО послать то не пойму!!!
|
pascal65536 |
![]()
Сообщение
#19
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 62 Пол: Мужской Репутация: ![]() ![]() ![]() |
сто лет на форум не заглядывал, а тут такая дискуссия ;)
посмотрите на моём сайте, в исходниках, аналог команды DIR она сканирует все вложенные каталоги, начиная с текущего, или какой укажешь. Если переделать, то можно и файл искать, и по имени, и по расширению, и по маске, кому как захочется. : ![]() http://www.pascal.hop.ru/sourses.htm |
_Noname_ |
![]()
Сообщение
#20
|
Гость ![]() |
Вот спасибо доброму человеку!
|
![]() ![]() |
![]() |
Текстовая версия | 21.06.2025 12:58 |