17.01.2019, 17:33 [+3 UTC]
в нашей команде: 3 331 чел. | участники онлайн: 6 (рекорд: 20)

:: РЕГИСТРАЦИЯ

:: задать вопрос

:: все разделы

:: правила

:: новости

:: участники

:: доска почёта

:: форум

:: блоги

:: поиск

:: статистика

:: наш журнал

:: наши встречи

:: наша галерея

:: отзывы о нас

:: поддержка

:: руководство

Версия системы:
7.64 (07.01.2019)
JS-v.1.31 | CSS-v.3.35

Общие новости:
01.01.2019, 13:54

Форум:
14.01.2019, 10:08

Последний вопрос:
17.01.2019, 17:14
Всего: 148509

Последний ответ:
17.01.2019, 15:55
Всего: 257594

Последняя рассылка:
17.01.2019, 14:45

Писем в очереди:
0

Мы в соцсетях:

Наша кнопка:

RFpro.ru - здесь вам помогут!

Отзывы о нас:
31.12.2011, 14:07 »
Посетитель - 385948
СПАСИБО ОГРОМНОЕ !!!! С НОВЫМ ГОДОМ И РОЖДЕСТВОМ ВАС !!!!!! [вопрос № 185003, ответ № 269404]
15.04.2010, 05:32 »
Дмитрий Соломонович
Исчерпывающий ответ на мой главный вопрос: ЧТО СДЕЛАТЬ, чтобы решить проблему. Спасибо! [вопрос № 177848, ответ № 260818]
30.12.2009, 06:48 »
shader01
Камень с души. Огромное спасибо! [вопрос № 175724, ответ № 258250]

РАЗДЕЛ • Pascal / Delphi / Lazarus

Создание программ на языках Pascal, Delphi и Lazarus.

[администратор рассылки: Зенченко Константин Николаевич (Старший модератор)]

Лучшие эксперты в этом разделе

Зенченко Константин Николаевич
Статус: Старший модератор
Рейтинг: 574
puporev
Статус: Профессионал
Рейтинг: 194
Степанов Иван /REDDS
Статус: 4-й класс
Рейтинг: 28

Перейти к консультации №:
 

Консультация онлайн # 68317
Раздел: • Pascal / Delphi / Lazarus
Автор вопроса: Bingo
Отправлена: 23.12.2006, 21:53
Поступило ответов: 4

Как называется процедура, которая отбражает все содержимое определенной директории или диска? (Что-то вроди dir в COMMAND.COM или FindFirst В Паскале).

Состояние: Консультация закрыта

Ответ # 133302 от KiberZero

Здравствуйте, Bingo!

Процедуры и функции работы с файлами

Function FExpand(Name : PathStr): PathStr
Name - имя файла Получив имя файла, расширяет его до полностью определенного имени (диск, директория и расширение)

Function FSearch(Name : PathStr; OirList: string): PathStr
Name - имя файла; DirList - список путей для поиска; результат - найденный путь к файлу Ищет файл в заданном списке директорий

Function FSplit(Path: PathStr; var Dir: DirStr; var Name: NameStr; var Ext: ExtStr);
Path – имя файла с полным путем;
Dir – директория; Name – имя файла; Ext - расширение Разделяет полное имя файла на 3 части (директория, имя файла, расширение)

Procedure FindFirst(Path : String; Attr: word; var F: TSearchRec);
Path – путь для поиска с маской; Attr- атрибуты искомых файлов; F- запись типа TsearchRec с результатами поиска Ищет в заданном каталоге первый файл, соответствующий заданной спецификации

Procedure FindNext(var F : TSearchRec);
F – запись типа TsearchRec с результатами поиска Ищет следующие файлы, удовлетворяющиеспецификации, заданной в процедуре FindFirst

Procedure GetFAttr(var F, var Attr: word);
F - переменная файлового типа; Attr - код атрибутов файла Определяет атрибуты файла

Procedure SetFAttr(var R Attr: word);
F - переменная файлового типа; Attr - код атрибутов файла Устанавливает атрибуты файла
Посмотрите ещё некоторые описания и исходники здесь http://kladovka.net.ru/index.cgi?pid=article&rid=1.

Удачи!


Консультировал: KiberZero
Дата отправки: 24.12.2006, 00:33

Рейтинг ответа:

0

[подробно]

Сообщение
модераторам

Отправлять сообщения
модераторам могут
только участники портала.
ВОЙТИ НА ПОРТАЛ »
регистрация »

Ответ # 133306 от Mo-skin

Здравствуйте, Bingo!
В дополнение к вышесказанному хоху добавить пример кода,
выводящего в Memo список файлов выбранной директории.

Приложение:


Консультировал: Mo-skin
Дата отправки: 24.12.2006, 01:26

Рейтинг ответа:

0

[подробно]

Сообщение
модераторам

Отправлять сообщения
модераторам могут
только участники портала.
ВОЙТИ НА ПОРТАЛ »
регистрация »

Ответ # 133343 от Bouffon

Здравствуйте, Bingo!
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, CustomizeDlg, Grids, StdCtrls;

type
{TSearchRec = record
Time: Integer; // время создания файла
Size: Integer; // размер
Attr: Integer; // атрибуты файла
Name: TFileName; // имя найденого файла
ExcludeAttr: Integer;
FindHandle: THandle;
FindData: TWin32FindData;
end; }
TForm1 = class(TForm)
StringGrid1: TStringGrid;
Button1: TButton;
Edit1: TEdit;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
Searc:TSearchRec;
hfindfile,i:integer;
begin

// ищем файл
//запускаем поиск
hFindFile := FindFirst(edit1.Text,faAnyFile,Searc); //проверяеться коректность найденого файла
i:=1;

if hFindFile <> INVALID_HANDLE_VALUE then
//если коректно то запускаеться цикл repeat - until.
repeat
stringgrid1.Cols[0].Strings[i]:=inttostr(i);
stringgrid1.RowCount:=i+1;
stringgrid1.rows[i].Add(Searc.Name);
stringgrid1.rows[i].Add(inttostr(Searc.Size) + ' байт');
stringgrid1.rows[i].Add(formatdatetime('hh:mm:ss',Searc.Time));
stringgrid1.rows[i].Add(inttostr(Searc.attr));
//здесь вписаны операторы которые нужно выполнить.
i:=1+i;
until (FindNext(Searc) <> 0);
FindClose(Searc);
//закрываем поиск
end;
end.

одной процедуры которая бы выполняла dir я не знаю но вот есть ей замена если;
она выдает имя размер файла в stringrid , если тебе нужны только имена то вутри цикла пропиши только stringgrid1.rows[i].Add(Searc.Name);
если нужно в memo1 то memo1.Lines.Add(Searc.Name) ;
TSearchRec = record запись уже забитая в компилятор ее не нужно писать;


Консультировал: Bouffon
Дата отправки: 24.12.2006, 13:34

Рейтинг ответа:

0

[подробно]

Сообщение
модераторам

Отправлять сообщения
модераторам могут
только участники портала.
ВОЙТИ НА ПОРТАЛ »
регистрация »

Ответ # 133863 от Nick_K

Здравствуйте, Bingo!
в Delphi прекрасно работает тот же FindFirst ... FindNext


Консультировал: Nick_K
Дата отправки: 27.12.2006, 10:49

Рейтинг ответа:

0

[подробно]

Сообщение
модераторам

Отправлять сообщения
модераторам могут
только участники портала.
ВОЙТИ НА ПОРТАЛ »
регистрация »

Возможность оставлять сообщения в мини-форумах консультаций доступна только после входа в систему.
Воспользуйтесь кнопкой входа вверху страницы, если Вы зарегистрированы или пройдите простую процедуру регистрации на Портале.

Яндекс Rambler's Top100

главная страница | поддержка | задать вопрос

Время генерирования страницы: 0.20768 сек.

© 2001-2019, Портал RFPRO.RU, Россия
Калашников О.А.  |  Гладенюк А.Г.
Версия системы: 7.64 от 07.01.2019
Версия JS: 1.31 | Версия CSS: 3.35