Esiste un modo standard per trovare findfirst, findnext con gcc su linux usando stl?
Domanda
Non riesco a trovare l'API _findfirst / findfirst, _findnext / findnext su gcc per Linux, e in realtà preferirei utilizzare la libreria di modelli standard (STL) se inclusa qui.
Qualcuno sa quale API è disponibile per elencare i file in una directory sotto Linux per C ++ (gcc)?
Soluzione
Dai un'occhiata al Boost.Filesystem biblioteca.
In particolare, basic_directory_iterator .
Altri suggerimenti
Non è un'API in stile C ++, ma l'API che non si trova (il corrispondente Linux / Unix di findfirst / findnext in stile DOS / Windows) è opendir / readdir / closedir.
Il vantaggio principale dell'utilizzo di opendir / readdir / closedir è che non è necessaria alcuna libreria aggiuntiva (fa parte della libreria C, che si sta già utilizzando). In effetti, la libreria del filesystem Boost utilizza opendir / readdir / closedir per ottenere l'elenco dei file in una directory.
References:
L'STL non ha ancora funzioni per elencare i file in una directory. Ma ha funzioni per l'apertura di file di cui sei già a conoscenza.
Oltre a Boost.Filesystem, c'è anche STLSoft