将子目录中的文件列表导入数组
Importing a list of files in a subdirectory into an array
我正在开发一个程序,它要求我在多个点将我的 C++ 项目的子目录的内容导入 vector<string>
。假设项目目录名为root\
,我要扫描的目录为root\userFiles
。此文件夹仅包含其他文件,没有其他子文件夹。
然而问题是我被限制了,我不能使用任何 boost,dirent.h 头文件。只是基本的。
我想出的一个解决方案是使用命令 system( "dir /b * > userFiles/fileList.txt" );
,然后通过读取该文件并将其导入向量来过滤结果。
我的问题是如何 "cd" 进入该文件夹,运行 该命令,同时仍在该文件夹中,然后退出回到根文件夹..
我已经尝试使用 system("chdir userFiles/")
命令,但我仍然获取根文件夹中的所有文件。
如有任何帮助,我们将不胜感激。
所以我想出了一个更简单的方法。
int main()
{
system("chdir userFiles && dir /b * > fileList.txt");
}
我正在使用 &&
运算符将多个命令字符串连接在一起。因为我只使用 system()
函数,一旦所有这些命令将成为同一过程的一部分。
我正在开发一个程序,它要求我在多个点将我的 C++ 项目的子目录的内容导入 vector<string>
。假设项目目录名为root\
,我要扫描的目录为root\userFiles
。此文件夹仅包含其他文件,没有其他子文件夹。
然而问题是我被限制了,我不能使用任何 boost,dirent.h 头文件。只是基本的。
我想出的一个解决方案是使用命令 system( "dir /b * > userFiles/fileList.txt" );
,然后通过读取该文件并将其导入向量来过滤结果。
我的问题是如何 "cd" 进入该文件夹,运行 该命令,同时仍在该文件夹中,然后退出回到根文件夹..
我已经尝试使用 system("chdir userFiles/")
命令,但我仍然获取根文件夹中的所有文件。
如有任何帮助,我们将不胜感激。
所以我想出了一个更简单的方法。
int main()
{
system("chdir userFiles && dir /b * > fileList.txt");
}
我正在使用 &&
运算符将多个命令字符串连接在一起。因为我只使用 system()
函数,一旦所有这些命令将成为同一过程的一部分。