【问题标题】:Is given name is file or directory while looping a directory structure in C++在 C++ 中循环目录结构时,给定名称是文件或目录
【发布时间】:2011-01-20 09:56:58
【问题描述】:

在 C++ 中,如果目录结构是子目录还是文件,我们如何在循环时以编程方式查找目录结构。我想使用 C++ 标准中可用的功能来执行此操作,而不使用 Boost 或系统调用,并且实现应该是可移植的。

【问题讨论】:

    标签: c++ c


    【解决方案1】:

    如果没有可移植的库(想到提升),您将无法便携(可能是双关语)。 c++ 标准没有这种功能。

    你为什么不想使用 boost?

    【讨论】:

      【解决方案2】:

      标准 C 库中的 readdir() 函数应该可以解决问题。有关它的一些基本文档,请参阅http://linux.die.net/man/3/readdir

      dirent 结构应该包含必要的信息来告诉每个文件的类型。

      【讨论】:

      • 我相信 readdir() 不是标准 C 而是 POSIX。无论如何,我认为它不能直接在带有 Visual Studio 的 Windows 中使用。
      • 嗯,我的 OSX 机器上的“man readdir”显示“标准 C 库”,但它可能指的是“libc 磁盘上的二进制文件”而不是“C 库规范”。我不熟悉 Windows API,所以除此之外我不会提供太多帮助。
      • 我不确定,我也不会在windows中编码,但是看C99草稿我没有找到它,谷歌搜索“readdir windows”显示有人尝试过并且是looking for alternatives
      猜你喜欢
      • 2019-06-08
      • 2011-12-16
      • 2013-10-23
      • 2020-06-17
      • 1970-01-01
      • 2020-09-27
      • 1970-01-01
      • 2014-06-17
      相关资源
      最近更新 更多