لیست کردن فایل یک فلدر - هفت خط کد انجمن پرسش و پاسخ برنامه نویسی

لیست کردن فایل یک فلدر

0 امتیاز
سلام.

تو ویندوز برای اینکه بررسی کنیم آیا یک فلدر اصولا وجود داره یا نه یا بهش دسترسی داریم یا نه و بعد از آن کل فایل های داخل آن را لیست کنیم تابعی وجود داره؟
سوال شده شهریور 2, 1399  بوسیله ی dark16 (امتیاز 172)   7 18 25

2 پاسخ

+1 امتیاز
 
بهترین پاسخ

به این روش عمل کنید :

DIR *dir;
struct dirent *ent;
if ((dir = opendir ("c:\\src\\")) != NULL) {
  /* print all the files and directories within directory */
  while ((ent = readdir (dir)) != NULL) {
    printf ("%s\n", ent->d_name);
  }
  closedir (dir);
} else {
  /* could not open directory */
  perror ("");
  return EXIT_FAILURE;
}

اگر هم c++17 استفاده می کنید به صورت زیر:

#include <string>
#include <iostream>
#include <filesystem>
namespace fs = std::filesystem;

int main()
{
    std::string path = "/path/to/directory";
    if (fs::exist(path))
    for (const auto & entry : fs::directory_iterator(path))
        std::cout << entry.path() << std::endl;
}

 

پاسخ داده شده شهریور 2, 1399 بوسیله ی toopak (امتیاز 2,458)   16 48 66
انتخاب شد آذر 14, 1399 بوسیله ی farnoosh
0 امتیاز
سلام؛ برای این منظور می‌تونید از std::filesystem استفاده کنید، مثلاً برای اینکه متوجه بشید یک آدرس وجود داره یا نه می‌تونید از std::filesystem::exist استفاده کنید.
پاسخ داده شده شهریور 2, 1399 بوسیله ی mg_ramezani (امتیاز 727)   1 1 12
...