Что нового

[Файловая система] Копирование файлов с определённым размером

hiho

Новичок
Сообщения
16
Репутация
2
Здравствуйте. Не подскажите как можно скопировать папку с подпапкими, сверяя размер каждого файла, дабы не копировать совсем большие?
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1,590
Репутация
341
Код:
If Not FileGetSize("имя") > (100 * 1024) Then
    FileCopy()
EndIf

Самая простая конструкция? Сами додумаете? :smile:
 
Автор
H

hiho

Новичок
Сообщения
16
Репутация
2
=) Основной вопрос состоял в том, чтобы организовать рекурсию для получения всех файлов в папке
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1,590
Репутация
341
Код:
#Include <File.au3>
#Include <Array.au3>

$Files = _FindFiles('C:', '*.*')

Func _FindFiles($sRoot, $sFile)

    Local $FileList, $Array[1]

    $FileList = _FileListToArray($sRoot, $sFile, 1)
    If Not @error Then
        For $i = 1 To $FileList[0]
			_ArrayAdd($Array,$sRoot & '\' & $FileList[$i])
        Next
    EndIf
    _ArrayDelete($Array, 0)
    $FileList = _FileListToArray($sRoot, '*', 2)
    If Not @error Then
        For $i = 1 To $FileList[0]
            $TempArr = _FindFiles($sRoot & '\' & $FileList[$i], $sFile)
			_ArrayConcatenate($Array, $TempArr)
        Next
    EndIf

	Return $Array
EndFunc   ;==>_FindFiles
_ArrayDisplay($Files)


Ну вот немного переделанный скрипт от Yashied
 
Автор
H

hiho

Новичок
Сообщения
16
Репутация
2
Спасибо большое, именно то, что надо, как вернусь с работы, буду разбираться.

PS: Добавляет в массив пустые строки
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1,590
Репутация
341
Вариант исправил. Должно работать :smile:
 
Верх