PDA

Visualizza la versione completa : [C++] Leggere nomi di file da directory in ordine alfabetico


program
21-07-2011, 18:19
Ciao ha tutti.

Ho il seguente problema:

ho una cartella con una serie di file tipo nome_numero.txt

Poichè devo andare a leggere il contenuto del file ed associarlo al numero nel titolo,
ho scritto un programma che, con l'utilizzo di dirent.h, mi permette di mettere solo il nome della cartella e poi gestisce tutto da solo (lavoro con ubuntu 9.04)

Il problema principale è che non va a prendersi i dati non in ordine alfabetico e quindi non legge nel giusto ordine.

Esempio:
Se nella cartella ho
a_1.txt
a_2.txt
a_3.txt
a_4.txt

lui legge:
a_4.txt
a_2.txt
a_3.txt
a_1.txt

Ora, che voi sappiate, c'è un comando che mi permetta di leggere nel giusto oridine?

Grazie.

YuYevon
22-07-2011, 09:44
scandir() e alphasort() (http://pubs.opengroup.org/onlinepubs/9699919799/functions/alphasort.html), definite nello standard POSIX.1-2008.

program
22-07-2011, 10:32
Ottimo,
funziona!!!

In rete si trovano sia spiegazioni che utili esempi.

Grazie mille per l'aiuto.

Loading