Главная страница
    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.054 c
1-1159262982
gdaujk
2006-09-26 13:29
2006.11.05
Выделяем память в DLL, а освобождаем в главном приложении…


15-1160621748
Slider007
2006-10-12 06:55
2006.11.05
С днем рождения ! 12 октября


2-1161250863
Axis_of_Evil
2006-10-19 13:41
2006.11.05
работа с XML документом


2-1161362732
kulkse
2006-10-20 20:45
2006.11.05
Ошибка при запуске программы.


2-1161126729
Wolfheart
2006-10-18 03:12
2006.11.05
Assembler &amp; Delphi





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский