Как в С скопировать папку со всеми файлами и перенести по указанному path
Мне необходимо скопировать папку со всеми файлами и перенести по указанному мною path, как это сделать? Различные MoveFile, CopyFile не подходят, так как они копируют только один файл, а мне нужно скопировать целиком папку со всем содержимым.
Ответы (2 шт):
- ну раз вы тут упоминаете WinAPI, то используйте
WinExec
https://docs.microsoft.com/en-us/windows/win32/api/winbase/nf-winbase-winexec
сформируйте команду (т.е. создайте строку с указанием команды и старого и нового места папки), которой из консоли бы копировали папку со всеми файлами, и вызовите ее :)
- использовать
MoveFile,CopyFileтоже можно, просто для начала найдите все файлы в выбранной папке через `FindFileNext
https://docs.microsoft.com/en-us/windows/win32/api/fileapi/nf-fileapi-findnextfilea
- вот тут умных мыслей набросали по данному вопросу
https://stackoverflow.com/questions/4725115/on-windows-is-there-an-interface-for-copying-folders
Раз у вас тэг С++, то все просто:
std::filesystem::copy("dir1","dir2");
Подробнее о том, какие параметры можно передавать этой функции, смотрите здесь.