C/C++实现遍历文件夹中所有文件并复制到另一个目录
作者:野牛程序员:2023-08-29 10:09:08 C++阅读 2676
可以使用以下的C/C++代码来实现遍历文件夹中所有文件并复制到另一个目录的功能:
#include <iostream> #include <filesystem> #include <fstream> #include <string> namespace fs = std::filesystem; void copyFile(const fs::path& source, const fs::path& destination) { std::ifstream src(source, std::ios::binary); std::ofstream dest(destination, std::ios::binary); dest << src.rdbuf(); } void traverseAndCopy(const fs::path& sourceDir, const fs::path& destinationDir) { for (const auto& entry : fs::directory_iterator(sourceDir)) { const fs::path& sourcePath = entry.path(); const fs::path& destinationPath = destinationDir / sourcePath.filename(); if (fs::is_regular_file(sourcePath)) { copyFile(sourcePath, destinationPath); } else if (fs::is_directory(sourcePath)) { fs::create_directory(destinationPath); traverseAndCopy(sourcePath, destinationPath); } } } int main() { const fs::path sourceDirectory = "path_to_source_directory"; // 替换为源文件夹的路径 const fs::path destinationDirectory = "path_to_destination_directory"; // 替换为目标文件夹的路径 traverseAndCopy(sourceDirectory, destinationDirectory); return 0; }
请将上述代码中的 "path_to_source_directory"
替换为源文件夹的实际路径,将 "path_to_destination_directory"
替换为目标文件夹的实际路径。这段代码将遍历源文件夹中的所有文件和子文件夹,并将它们复制到目标文件夹中。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892

- 上一篇:c++ 打印换行符影响计时
- 下一篇:c++实现计算器