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