Ich kann scheinbar nicht die API _findfirst / findfirst, _findnext / findnext auf gcc für Linux finden und würde stattdessen die Standard Template Library (STL) dafür verwenden, wenn sie dort enthalten ist.
Weiß jemand, welche API für das Auflisten von Dateien in einem Verzeichnis unter Linux für C ++ (gcc) verfügbar ist?
Sehen Sie sich die Bibliothek Boost.Filesystem an.
>Insbesondere basic_directory_iterator .
Es ist keine API im C ++ - Stil, aber die API, die Sie nicht finden (der Linux / Unix-Korrespondent von DOS / Windows-Stil findfirst / findnext), ist opendir / readdir / closedir.
Der Hauptvorteil der Verwendung von opendir / readdir / closedir besteht darin, dass Sie keine zusätzliche Bibliothek benötigen (sie ist Teil der C-Bibliothek, die Sie bereits verwenden). Tatsächlich verwendet die Boost-Dateisystembibliothek openendir / readdir / closedir, um die Liste der Dateien in einem Verzeichnis abzurufen.
Referenzen:
Die STL hat noch keine Funktionen zum Auflisten von Dateien in einem Verzeichnis. Aber es hat Funktionen zum Öffnen von Dateien, die Sie bereits kennen.
Neben Boost.Filesystem gibt es auch STLSoft