Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.06.05;
Скачать: CL | DM;

Вниз

Сравнение   Найти похожие ветки 

 
Opera ©   (2003-05-26 10:58) [0]

Помогите есть две директории, в одной например две папки
"life и download" а в другой "life, buy, disks" так вот мне нужно чтобы происходнило сравнение 2-го с 1-ым что есть одинакового, в данном случае папка life так вот я хочу чтобы это название добавлялось в ListBox. (если одинаковых папок 4 то 4 названия в ListBox). Всем заранее за полезные советы, код спасибо!


 
pasha_golub ©   (2003-05-26 11:14) [1]

Имеется в виду название папки/файла или размер тоже?
А вообще-то, то FindFirst/FindNext.

procedure TForm.FindDuplicates(Dir1,Dir2: TFileName);
var SR1,SR2: TSearchRec;

begin
FAttr := faAnyFile;
if FindFirst(Dir1+"\*", FAttr or faDirectory,SR2) = 0 then
Repeat
if (((SR1.Attr and faDirectory) = faDirectory) and (SR1.Name<>".") and (SR1.Name<>".."))
or ((SR1.Attr and FAttr) = FAttr)
then
if (FindFirst(Dir2+"\"+SR1.Name,FAttr or faDirectory,SR2) = 0) and (SR2.Attr = SR1.Attr) then
ListBox1.Items.Add(SR1.Name);


Until FindNext(SR1) <> 0;

FindClose(SR1);
FindClose(SR2);

end;


 
pasha_golub ©   (2003-05-26 11:16) [2]

Пардон, в 7 строчке:
if FindFirst(Dir1+"\*", FAttr or faDirectory,SR2) = 0 then

а надо:
if FindFirst(Dir1+"\*", FAttr or faDirectory,SR1) = 0 then



Страницы: 1 вся ветка

Текущий архив: 2003.06.05;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.028 c
7-13491
v-king
2003-04-03 19:59
2003.06.05
Не могу прочесть с СОМ-порта!!!!


3-13077
Pat
2003-05-18 09:24
2003.06.05
DisplayWidth для Lookup поля


1-13278
TuZ
2003-05-23 23:43
2003.06.05
Иконки из exe-шника


14-13456
Дмитрий К.К.
2003-05-20 06:37
2003.06.05
Именинники 20 мая


3-13060
BackStabber
2003-05-16 16:32
2003.06.05
Восстановление базы InterBase