如何访问系统目录C ++中的文件?

时间:2012-11-04 16:32:51

标签: c++ directory

如何访问System目录中的文件,知道主目录,它的扩展名。但是不知道文件的名称和它们之间的节点(= Subderectories)?

2 个答案:

答案 0 :(得分:1)

如何查找目录的内容,从而找出该文件的名称,与操作系统的不同之处在于操作系统。在Linux上,您将在Windows上使用diropen和其他内容。但是,boost::filesystem库允许您以独立于平台的方式执行此操作。

如果我得到你说的正确,你正在寻找一个文件“/System/foo/bar/baz.dat”,但你不知道“foo”,“bar”或“baz”是什么。在这种情况下,您需要遍历“/ System”下面每个目录中的每个文件,直到找到具有您正在寻找的扩展名的文件。

请参阅this question的最佳答案,了解此类迭代的示例。

答案 1 :(得分:0)

您可以从System目录开始搜索具有该扩展名的所有文件。基于"系统目录",我猜这是在Windows上,在这种情况下,您通常用于该搜索的功能将是FindFirstFile,{{ 1}}和FindNextFile。您也可以使用FindClose遍历起始点下的子目录。

根据您所说的内容(到目前为止),如果找到多个具有该扩展名的文件,很难猜到您可能想要做什么。