如何确定另一个文件夹中的文件或文件夹?

时间:2015-08-01 11:08:50

标签: c++

我是文件阅读的新手,我的问题是,如何确定另一个文件夹中的文件/文件夹?

示例:

文件夹“whoa”包含以下文件:

+ whoa

    - hello.dll

    - world.dll

    - helloworld.exe

    + cplusplus //cplusplus is a folder

        - c++.png

现在,我想通过c ++确定“whoa”的内容,我该怎么做? 另外,我也想创建内容的树视图。

1 个答案:

答案 0 :(得分:0)

在标准C ++中没有可移植的方法。有计划在新的C ++标准迭代中标准化文件系统操作。

不可移植,使用VS2012 +中提供的<filesystem>标头。顺便提一下,这些类与boost::filesystem非常相似。

std::vector<string> filePaths;
path folderPath = "whoa";

if (is_directory(folderPath))
{
    // This recursively traverses the folder structure.
    // Use directory_iterator if just want to traverse the current folder.
    recursive_directory_iterator endit;
    recursive_directory_iterator it(folderPath);

    for (; it != endit; ++it)
    {
        string filePath = it->path().string();
        filePaths.push_back(filePath);
    }
}

如果您想要便携性,请查看boost::filesystem