Condividi tramite


_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

Vedere anche

Riferimenti

Chiamate di sistema

_find, funzioni di _wfind