3

我为这个问题实现了一个解决方案,它意味着跨平台并遵循 C++ 标准库。

bool isdir(const char *string) {
   ofstream file(string, ios::out);
   return file.fail();
}

但是,如果该文件实际上是可写的,则程序会string在其工作目录中打开一个名称为空的文件。我怎样才能防止这种情况发生?

4

1 回答 1

4

没有标准的方法来检测文件是否是 C++ 中的目录。但是您可以使用Boost.Filesystem。它的便携性很好。

编辑:似乎这个问题已经在这里得到了回答。

于 2012-05-22T06:42:30.767 回答