ynbIpb
Advanced Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Habib2302 Да, кода на мноого больше получилось) Код: #include <File.au3> $sMergeFolder = FileSelectFolder ("Select directory", "", 0, @ScriptDir); выбираем основную папку с подпапками If $sMergeFolder = "" Then Exit ; если не выбрали, выход $aAllSubfolders = _FileListToArray($sMergeFolder, "*", 2); формируем массив из списка подпапок If IsArray ($aAllSubfolders) = 0 Then Exit ; если результат не является массивом, значит нет подпапок, выход. For $i=1 To $aAllSubfolders[0] ; крутим цикл столько раз, сколько у нас подпапок. $aAllfiles = _FileListToArray($sMergeFolder&"\"&$aAllSubfolders[$i], "*.dat", 1); формируем массив и списка *.dat файлов в текущей подпапке If IsArray ($aAllfiles) Then ; если результат является массивом, значит есть файлы, выполняем манипуляции $hMergedfile = FileOpen ($sMergeFolder&"\"&$aAllSubfolders[$i]&"\Mergedfile.dat", 1+16); создаём объединённый файл For $j=1 To $aAllfiles[0]; крутим цикл столько раз, сколько у нас *.dat файлов в текущей подпапке $hCurfile = FileOpen ($sMergeFolder&"\"&$aAllSubfolders[$i]&"\"&$aAllfiles[$j], 0+16); открываем текущий файл в режиме чтения + бинарный FileWrite ($hMergedfile, FileRead ($hCurfile)) ; пишем в объединённый файл FileClose ($hCurfile); закрываем текущий файл Next FileClose ($hMergedfile); закрываем объединённый файл EndIf Next MsgBox (0, "", "Done!"&@CRLF&$aAllSubfolders[0]) | Skif_off, спасибо поправил. | Всего записей: 1645 | Зарегистр. 01-05-2006 | Отправлено: 23:15 23-12-2020 | Исправлено: ynbIpb, 19:29 24-12-2020 |
|