包含头文件
#include <filesystem>
创建文件夹;
std::string Dest = "c:/asdf";
create_directories(std::tr2::sys::path(Dest)); // c++ 11
获取文件夹大小,由于没有获取文件夹大小的函数,只能获取文件大小然后累加得到
uint64_t GetSizeOfFolder(const std::string& src)
{
uint64_t lFolderSize = 0;
std::tr2::sys::path src_dir(src);
for (std::tr2::sys::directory_iterator end, ite(src_dir); ite != end; ++ite)
{
if (!is_directory(ite->path()))
{
lFolderSize += file_size(std::tr2::sys::path(src + "\\" + ite->path().filename().string()));
}
};
return lFolderSize;
}
删除文件;
std::string path = "c:\qwer"; // 删除文件夹目录
remove_all(std::tr2::sys::path(path));
先记录这么多,以后要经常使用C++ 11 标准库的函数,这样未来的跨平台比较方便.以后慢慢添加.
遍历文件夹下所有文件,并找出“bmp”格式的图片
std::vector<string> strPicture;
for (std::tr2::sys::directory_iterator end, ite(src_dir); ite != end; ++ite)
{
if (!is_directory(ite->path()))
{
auto fileName = ite->path().filename().string(); // 提取文件名并转换为字符串
if (std::tr2::sys::path(fileName).extension() != ".bmp") // 提取文件的扩展名
{
continue;
}
strPicture.push_back(fileName);
}
};