std::filesystem文件系统

20231205更新:

想偷个懒在代码路径下生成一个文件夹

if (std::filesystem::exists("./path")) {
            //std::cout << "Path exists." << std::endl;
}
else {
    std::error_code ec;
    std::filesystem::create_directories("./path", ec);
}

C++17 支持文件系统

判断文件夹是否存在

    if (!std::filesystem::exists(dir)) {
        std::cout << "map path wrong!" << std::endl;
        return false;
    }

创建文件夹

std::filesystem::create_directories(dir);

想知道文件夹里面有什么

 directory_iterator和recursive_directory_iterator的区别:

directory_iterator只能知道文件夹下的所有文件名,recursive_directory_iterator不仅能知道文件夹下的所有文件名,还能知道文件夹下文件夹的文件名;

    for (auto const& dir_entry : std::filesystem::directory_iterator(dir) ) 
    {
        std::cout << "dir : " << dir_entry.path() << std::endl;
    }

这里面有个坑,如果是用普通string()

最好使用generic_string() 

想知道文件大小

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值