_findfirst, _wfindfirst
Fornire informazioni sulla prima istanza di un nome file corrispondente al file specificato in filespec argomento.
intptr_t _findfirst(
const char *filespec,
struct _finddata_t *fileinfo
);
intptr_t _findfirst32(
const char *filespec,
struct _finddata32_t *fileinfo
);
intptr_t _findfirst64(
const char *filespec,
struct _finddata64_t *fileinfo
);
intptr_t _findfirsti64(
const char *filespec,
struct _finddatai64_t *fileinfo
);
intptr_t _findfirst32i64(
const char *filespec,
struct _finddata32i64_t *fileinfo
);
intptr_t _findfirst64i32(
const char *filespec,
struct _finddata64i32_t *fileinfo
);
intptr_t _wfindfirst(
const wchar_t *filespec,
struct _wfinddata_t *fileinfo
);
intptr_t _wfindfirst32(
const wchar_t *filespec,
struct _wfinddata32_t *fileinfo
);
intptr_t _wfindfirst64(
const wchar_t *filespec,
struct _wfinddata64_t *fileinfo
);
intptr_t _wfindfirsti64(
const wchar_t *filespec,
struct _wfinddatai64_t *fileinfo
);
intptr_t _wfindfirst32i64(
const wchar_t *filespec,
struct _wfinddata32i64_t *fileinfo
);
intptr_t _wfindfirst64i32(
const wchar_t *filespec,
struct _wfinddata64i32_t *fileinfo
);
Parametri
filespec
Specifica di file di destinazione (possibile includere i caratteri jolly).fileinfo
Buffer di informazioni sul file.
Valore restituito
Se l'operazione viene completata correttamente, _findfirst restituisce l'handle di ricerca univoche che identificano il file o il gruppo di file corrispondenti filespec specifica, che può essere utilizzato in una chiamata successiva _findnext oppure _findclose.In caso contrario, _findfirst restituisce a 1 e set errno su uno dei seguenti valori.
EINVAL
parametro non valido: filespec o fileinfo era NULL.In alternativa, il sistema operativo ha restituito un errore imprevisto.ENOENT
Specifica di file che non può essere associato.ENOMEM
memoria insufficiente.EINVAL
La specifica non valida di nome file o il nome file specificato è maggiore di MAX_PATH.
Per ulteriori informazioni su questi e altri codici restituiti, vedere _doserrno, errno, _sys_errlist e _sys_nerr.
Se viene passato un parametro non valido in, la chiamata di queste funzioni del gestore non valido di parametro, come descritto in Convalida dei parametri.
Note
È necessario chiamare _findclose al termine con uno _findfirst o _findnext funzione (o il variant).Ciò liberare le risorse utilizzate da queste funzioni nell'applicazione.
le variazioni di queste funzioni che hanno w il prefisso è versione a caratteri estesi, in caso contrario, sono identiche alle funzioni a byte singolo corrispondenti.
Le variazioni di queste funzioni supportano il 32 bit o i tipi di tempo a 64 bit e a 32 bit o le dimensioni del file a 64 bit.il primo suffisso numerico (32 o 64) indica la dimensione del tempo, il secondo suffisso è uno i32 o i64e indica se le dimensioni del file sono rappresentate come una piattaforma a 32 bit o Integer a 64 bit.Per informazioni sulla definizione delle versioni supportano il 32 bit e i tipi e le dimensioni del file di tempo a 64 bit, vedere la tabella seguente.i32 o i64 il suffisso viene omesso se è uguale alla dimensione del tempo, pertanto _findfirst64 supporta inoltre le lunghezze dei file a 64 bit e _findfirst32 lunghezza dei file a 32 bit di supportare unicamente.
Queste funzioni utilizzano vari del form _finddata_t struttura per fileinfo parametro.Per ulteriori informazioni sulla struttura, vedere _find, funzioni di _wfind.
Le variazioni che utilizzano un tipo di tempo a 64 bit consentono alle date di file-creazione da esprimere su con il 23:59: 59, il 31 dicembre, 3000, UTC.Quelli che utilizzano i tipi di tempo a 32 bit rappresentano le date solo con il 19:14: 7 gennaio 18, 2038, UTC.La mezzanotte, il 1° gennaio 1970, è il limite inferiore dell'intervallo di dati per tutte queste funzioni.
A meno che non esista un motivo specifico per utilizzare le versioni che specificano le dimensioni di tempo in modo esplicito, utilizzare _findfirst o _wfindfirst in alternativa, se è necessario supportare le dimensioni del file superiori a 3 GB, utilizzare _findfirsti64 o _wfindfirsti64.Tutte queste funzioni utilizzano il tipo di tempo a 64 bit.Nelle versioni precedenti, queste funzioni che hanno utilizzato un tipo di tempo a 32 bit.Se si tratta di una modifica sostanziale per un'applicazione, è possibile definire _USE_32BIT_TIME_T per ripristinare il comportamento precedente.se _USE_32BIT_TIME_T viene definito, _findfirst, _finfirsti64e le versioni corrispondenti Unicode utilizzano un'ora a 32 bit.
Variazioni del tipo del tipo di tempo e di lunghezza del file di _findfirst
Funzioni |
_USE_32BIT_TIME_T definito? |
tipo di tempo |
Tipo di lunghezza del file |
---|---|---|---|
_findfirst, _wfindfirst |
non definito |
64 bit |
A 32 bit |
_findfirst, _wfindfirst |
definito |
A 32 bit |
A 32 bit |
_findfirst32, _wfindfirst32 |
Nessun effetto dalla definizione macro |
A 32 bit |
A 32 bit |
_findfirst64, _wfindfirst64 |
Nessun effetto dalla definizione macro |
64 bit |
64 bit |
_findfirsti64, _wfindfirsti64 |
non definito |
64 bit |
64 bit |
_findfirsti64, _wfindfirsti64 |
definito |
A 32 bit |
64 bit |
_findfirst32i64, _wfindfirst32i64 |
Nessun effetto dalla definizione macro |
A 32 bit |
64 bit |
_findfirst64i32, _wfindfirst64i32 |
Nessun effetto dalla definizione macro |
64 bit |
A 32 bit |
Mapping di routine a testo generico
routine di Tchar.h |
_UNICODE e _MBCS non definiti |
_MBCS definito |
_UNICODE definito |
---|---|---|---|
_tfindfirst |
_findfirst |
_findfirst |
_wfindfirst |
_tfindfirst32 |
_findfirst32 |
_findfirst32 |
_wfindfirst32 |
_tfindfirst64 |
_findfirst64 |
_findfirst64 |
_wfindfirst64 |
_tfindfirsti64 |
_findfirsti64 |
_findfirsti64 |
_wfindfirsti64 |
_tfindfirst32i64 |
_findfirst32i64 |
_findfirst32i64 |
_wfindfirst32i64 |
_tfindfirst64i32 |
_findfirst64i32 |
_findfirst64i32 |
_wfindfirst64i32 |
Requisiti
Funzione |
Intestazione di associazione |
---|---|
_findfirst |
<io.h> |
_findfirst32 |
<io.h> |
_findfirst64 |
<io.h> |
_findfirsti64 |
<io.h> |
_findfirst32i64 |
<io.h> |
_findfirst64i32 |
<io.h> |
_wfindfirst |
<io.h> o <wchar.h> |
_wfindfirst32 |
<io.h> o <wchar.h> |
_wfindfirst64 |
<io.h> o <wchar.h> |
_wfindfirsti64 |
<io.h> o <wchar.h> |
_wfindfirst32i64 |
<io.h> o <wchar.h> |
_wfindfirst64i32 |
<io.h> o <wchar.h> |
Per ulteriori informazioni sulla compatibilità, vedere compatibilità nell'introduzione.
Equivalente .NET Framework
System:: I:: DirectoryInfo:: GetFiles