Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.11.05;
Скачать: [xml.tar.bz2];

Вниз

Как скопировать все файлы из каталога   Найти похожие ветки 

 
Helen   (2006-10-19 10:53) [0]

Доброго дня! У меня вопрос: как скопировать все файлы *.dbf из каталога, т.е. один файл я делаю CopyFile(откуда, куда), а как группу. Их нужно сначала выбрать?


 
Elen ©   (2006-10-19 10:55) [1]


> Helen

Можно воспользоваться TFileListBox или FindFirst...FindNext


 
Dmitrij_K   (2006-10-19 10:59) [2]


> файл я делаю CopyFile(откуда, куда), а как группу.

циклом


 
Helen   (2006-10-19 11:02) [3]

TFileListBox использовать нельзя, т.к. приложение консольное.
А циклом, значит использовать FindFirst...FindNext? И как задать параметр у этих функций?


 
Helen   (2006-10-19 11:04) [4]

В хелпе нашла, что можно задавать маску, сейчас попробую. Еще ни разу не пользовала эти функции.


 
Elen ©   (2006-10-19 11:05) [5]


> Helen


var s:TSearchRec;
begin
if FindFirst(<Путь_к_файлам>"*.dbf",faanyfile,s)=0 then
repeat
 ListBox1.Items.Append(s.Name);
//ну и копорование <Путь_к_файлам>+s.name
until FindNext(s)<>0;
FindClose(s);


 
Ketmar ©   (2006-10-19 11:13) [6]

>[3] Helen 19-Oct-2006, 11:02
>приложение консольное.
чем .bat не угодили тогда?


 
Helen   (2006-10-19 11:17) [7]

.bat еще как угодил бы, только нужно составлять отчет сколько каких файлов (с именами файлов) было скопировано, сколько времени заняло, причины неудач и т.д.


 
Ketmar ©   (2006-10-19 11:22) [8]

>[7] Helen 19-Oct-2006, 11:17
ясно. тогда [5].


 
Anatoly Podgoretsky ©   (2006-10-19 18:50) [9]

ShFileOperation


 
Наиль ©   (2006-10-19 19:42) [10]


> .bat еще как угодил бы, только нужно составлять отчет сколько
> каких файлов (с именами файлов) было скопировано, сколько
> времени заняло, причины неудач и т.д.

Попробывал написать .bat умеющий большинство из перечисленого.
В данном случае два Батника и Папка "Backup" находятся там же, где и dbf файлы.
copy_dbf.bat
Time /t > log.txt
for %%file in (*.dbf) do call copy_1Dbf.bat %%file
Time /t >>log.txt


copy_1dbf.bat
echo %1 >>log.txt
copy %1 Backup\*.* >>Log.txt


Time выдаёт время с точностью до минуты, поэтому лучше использовать, в этом месте, свою программу.
Echo выдаёт имя копируемого файла
Copy сообщает о результате копирования каждого файла.

Это не руководство к действию, а лишь проба сил.


 
DevilDevil ©   (2006-10-19 19:59) [11]

> Elen ©   (19.10.06 11:05) [5]

А меня всешда интересовало, что за "." и ".." ? И как от них корректно и быстро "избавиться"  ?


 
Наиль ©   (2006-10-19 20:13) [12]


> А меня всешда интересовало, что за "." и ".." ? И как от
> них корректно и быстро "избавиться"  ?

В [5] такого нет.
Но если будут, то избавить приблизительно так:
if s.Name[1]="." then Continue;
. - текущий каталог
.\*.* (или .\.\.\*.*) - все файлы текущего каталога.
.. - Родительская папка. Не знаю как точнее сформулировать
с:\Windows\.. - то же самое, что c:\


 
Amoeba ©   (2006-10-20 10:54) [13]

http://www.delphikingdom.com/asp/viewitem.asp?catalogid=91



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

Форум: "Начинающим";
Текущий архив: 2006.11.05;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.049 c
2-1161406425
Insane SPIRIT
2006-10-21 08:53
2006.11.05
Перенос по словам в TStringGrid


3-1157704383
Вольный Стрелок
2006-09-08 12:33
2006.11.05
Как фильтровать лукапные поля?


4-1150793137
Lagrima_JN
2006-06-20 12:45
2006.11.05
Приостановка завершения Windows


8-1144071585
FBI Agent
2006-04-03 17:39
2006.11.05
Сигнал микрофона


2-1161069191
Батя
2006-10-17 11:13
2006.11.05
Типа listbox a только в место текста картинки





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский