相关疑难解决方法(0)

检查Unix中是否存在目录(系统调用)

我无法在线找到问题的解决方案.

我想在Unix中调用一个函数,传入一个目录的路径,并知道它是否存在.opendir()如果目录不存在则返回错误,但我的目标不是实际打开,检查错误,如果没有错误则关闭它,而只是检查文件是否是目录.

有没有方便的方法呢?

c c++ unix directory exists

49
推荐指数
2
解决办法
6万
查看次数

检查目录上的项目是否是 C 中的文件夹

我想检查目录中的所有文件时,如果目录中的文件/项目之一是文件夹(另一个目录)

我已经开始的代码(使用 dirent.h):

DIR *dir;
struct dirent *ent;
if ((dir = opendir ("c:\\src\\")) != NULL) {
  /* print all the files and directories within directory */
  while ((ent = readdir (dir)) != NULL) {
    if (ent.is_folder()) // here is what I want to implement
      printf ("Folder: %s\n", ent->d_name);
    else
      printf("File %s\n", ent->d_name);
  }
  closedir (dir);
} else {
  /* could not open directory */
  perror ("");
  return EXIT_FAILURE;
}
Run Code Online (Sandbox Code Playgroud)

c directory file dirent.h

2
推荐指数
1
解决办法
4187
查看次数

有没有一种编程方法可以判断符号链接是否指向 C 中的文件或目录?

我正在使用 递归地迭代目录readdir

struct dirent记录在此处,并注释d_type可以具有不同的值,包括DT_LNKDT_DIRDT_REG。但是,当d_typeis时DT_LNK,没有提示链接是指向文件还是目录。

有没有办法检查符号链接的目标是文件还是目录?

c symlink posix

2
推荐指数
1
解决办法
409
查看次数

标签 统计

c ×3

directory ×2

c++ ×1

dirent.h ×1

exists ×1

file ×1

posix ×1

symlink ×1

unix ×1