Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/164.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ C++;按升序打印文件名_C++_File_Sorting - Fatal编程技术网

C++ C++;按升序打印文件名

C++ C++;按升序打印文件名,c++,file,sorting,C++,File,Sorting,我正在使用以下代码遍历目录中的文件。此目录中的所有文件都已编号,每个文件都有一个唯一的编号 下面的代码成功打印出目录中的所有文件,但不是按升序。结果完全是随机的,一个文件是重复的 我找不到其他打印文件或按升序打印文件的方法。我真的需要按升序打印它们,然后再按升序打开它们。感谢您的帮助 DIR*dpdf; 结构方向*epdf dpdf = opendir("/data/files"); if (dpdf != NULL){ while (epdf = readdir(dpdf)){

我正在使用以下代码遍历目录中的文件。此目录中的所有文件都已编号,每个文件都有一个唯一的编号

下面的代码成功打印出目录中的所有文件,但不是按升序。结果完全是随机的,一个文件是重复的

我找不到其他打印文件或按升序打印文件的方法。我真的需要按升序打印它们,然后再按升序打开它们。感谢您的帮助

DIR*dpdf;
结构方向*epdf

dpdf = opendir("/data/files");
if (dpdf != NULL){
   while (epdf = readdir(dpdf)){
      printf("%s\n",epdf->d_name);
         // std::out << epdf->d_name << std::endl;
   }
}
dpdf=opendir(“/data/files”);
if(dpdf!=NULL){
while(epdf=readdir(dpdf)){
printf(“%s\n”,epdf->d_名称);

//std::out d_name在读取文件名时将其放入向量中

当您阅读完所有这些内容后,使用
std::sort
对数组进行排序


然后按照您认为合适的方式处理排序后的文件名。

并确保使用
std::unique_ptr
::closedir
来防止在
std::vector::emplace_back
抛出时发生泄漏。太棒了,我要试试这个。