![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как узнать имя файла? [D7]
Иван © (2008-05-07 09:54:00)Добрый день!
Есть папка в которой содержатся файлы с разными расширениями и с разными именами.
Как можно узнать имя файла по маске например dd*.d* (первого файла), а затем узнать имя следующего файла по этой же маске.
Jeer (2008-05-07 11:40:00) [1]
> задержки 500 может и не хватить
if (WinExec(PChar('cmd.exe /c dir /B /ON *.pas > ' + sOutFile),0) > 31) then
with TStringList.Create do begin
LoadFromFile(sOutFile);
ShowMessage(Text);
Free;
end;
Knight (2008-05-07 11:08:00) [2]> [22] Jeer © (07.05.08 10:43)
Тоже нормально...
заодно поломает мозк над правами доступа (для записи в sOutFile) и ожиданием окончания работы процесса (задержки 500 может и не хватить)
%)
Иван (2008-05-07 11:01:00) [3]Jeer, большое спасибо!
Jeer (2008-05-07 10:43:00) [4]
> Knight © (07.05.08 10:33) [21]
Совсем ты парня запутал:)
sOutFile: string = 'C:\D7\Projects\out.txt';
WinExec(PAnsiChar('cmd.exe /c dir /B /ON *.pas > ' + sOutFile),0);
Sleep(500);
with TStringList.Create do begin
LoadFromFile(sOutFile);
ShowMessage(Text);
Free;
end;
Knight (2008-05-07 10:33:00) [5]Удалено модератором
Примечание: Флудить завязываем
Knight (2008-05-07 10:32:00) [6]Удалено модератором
Примечание: Флудить завязываем
Knight (2008-05-07 10:30:00) [7]> [17] Иван (07.05.08 10:28)
> [6] Knight © (07.05.08 10:02)
> Набери FindFirst и нажми F1 там пример есть...
Reindeer Moss Eater (2008-05-07 10:29:00) [8]Бегом
Иван (2008-05-07 10:28:00) [9]А как Findamи пробежаться?
Jeer (2008-05-07 10:19:00) [10]
> А чё такие сложности с командной строкой?
А пусть моск тренирует:)
Knight (2008-05-07 10:18:00) [11]> [14] Jeer © (07.05.08 10:14)
А чё такие сложности с командной строкой?
> [2] Иван (07.05.08 09:59)
Пробегай по маске Findами... загоняй в TStringList и в конце сортируй, получишь список по алфавиту, делай с ним чё хошь.
Jeer (2008-05-07 10:14:00) [12]Вах..
Набрать в командной строке dir /?
Думать.
Думать над ShellExecute также.
Knight (2008-05-07 10:11:00) [13]> [11] Иван (07.05.08 10:07)
Это не функция.. это командная строка.
(2008-05-07 10:09:00) [14]Удалено модератором
Иван (2008-05-07 10:07:00) [15]А в какой функции это используется "dir /B /OE dd*.d* > out.txt" ?
Jeer (2008-05-07 10:07:00) [16]
> Иван (07.05.08 10:03) [8]
Еще раз включай думалку - что такое первый ?
Я тебе привел два варианта dir, один с сортировкой по имени, второй по расширению.
Как думаешь, первый файл в первом варианте каким будет во втором ?
Jeer (2008-05-07 10:04:00) [17]
> Иван (07.05.08 10:02) [4]
То есть включить моск не удалось ?
"dir /B /OE dd*.d* > out.txt"
Иван (2008-05-07 10:03:00) [18]Jeer, первый файл который будет найден по маске dd*.d* (имя файла по алфовиту)
Reindeer Moss Eater (2008-05-07 10:03:00) [19]А как узнать имя первого текущего файла по маске dd*.d*?
А что такое "первый текущий файл"?
И где находится "второй текущий файл"?
И далеко ли они от последнего текущего и предпоследнего не текущего файлов?
Knight (2008-05-07 10:02:00) [20]Функции ищут по маске и возвращают TSearchRec в котором есть имя файла. Набери FindFirst и нажми F1 там пример есть...