不理解std::filesystem::directory_iterator
创始人
2024-12-26 12:00:20
0

std::filesystem::directory_iterator是C++17的一个新的标准库,它可以方便地遍历指定路径下的所有文件和子文件夹,使用它可以有效地管理目录和文件的操作。以下是一个例子:

#include 
#include 

namespace fs = std::filesystem;
// 使用别名,简化命名空间

int main()
{
    fs::path pathToShow(".");
    // 使用当前目录

    try
    {
        if (fs::exists(pathToShow)) // 检查路径是否存在
        {
            if (fs::is_regular_file(pathToShow)) // 检查路径是否文件
                std::cout << pathToShow << " size is " << fs::file_size(pathToShow) << '\n';

            else if (fs::is_directory(pathToShow)) // 检查路径是否目录
            {
                std::cout << pathToShow << " is a directory containing:\n";

                for (const auto &entry : fs::directory_iterator(pathToShow)) // 遍历目录下所有文件和子文件夹
                {
                    std::cout << entry.path() << '\n'; // 输出文件名
                }
            }
            else
                std::cout << pathToShow << " exists, but is not a regular file or directory\n";
        }
        else
            std::cout << pathToShow << " does not exist\n";
    }
    catch (const fs::filesystem_error &ex)
    {
        std::cout << ex.what() << '\n'; // 处理异常
    }
    return 0;
}

这个例子会输出当前目录下的所有文件和子文件夹的名称。如果您需要管理文件和目录,则可以使用此库或查看C++17中的其他标准库。

相关内容

热门资讯

透视科技!aapoker公共底... 透视科技!aapoker公共底牌(透视)透视软件(原来真的是有挂);1、透视科技!aapoker公共...
透视肯定!aapoker怎么控... 透视肯定!aapoker怎么控制牌(透视)插件(其实真的是有挂)1、金币登录送、破产送、升级送、活动...
透视游戏!aapoker透视怎... 透视游戏!aapoker透视怎么用(透视)免费透视脚本(一直是有挂);aapoker透视怎么用软件透...
透视透视!aapoker透视脚... 透视透视!aapoker透视脚本下载(透视)透视软件(总是有挂)运aapoker透视脚本下载辅助工具...
透视有挂!aapoker怎么设... 透视有挂!aapoker怎么设置抽水(透视)辅助插件工具(好像真的是有挂)1、在aapoker怎么设...
透视计算!aapoker辅助插... 透视计算!aapoker辅助插件工具(透视)脚本(好像真的有挂)1、超多福利:超高返利,海量正版游戏...
透视总结!aapoker透视脚... 透视总结!aapoker透视脚本入口(透视)ai插件(本来真的是有挂);1、aapoker透视脚本入...
透视辅助!aapoker透视方... 透视辅助!aapoker透视方法(透视)透视方法(真是存在有挂)1、很好的工具软件,可以解锁游戏的a...
透视好友房!aapoker透视... 透视好友房!aapoker透视脚本入口(透视)发牌逻辑(一直有挂)1、不需要AI权限,帮助你快速的进...
透视了解!aapoker怎么提... 透视了解!aapoker怎么提高中牌率(透视)透视脚本下载(其实真的是有挂)1、下载好aapoker...