Udostępnij za pośrednictwem


_findfirst, _wfindfirst

Informacje na temat pierwsze wystąpienie nazwy pliku, który pasuje do określonego w pliku filespec argument.

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 
);

Parametry

  • filespec
    Specyfikacja pliku docelowego (może zawierać symbole wieloznaczne).

  • fileinfo
    Plik informacji buforu.

Wartość zwracana

W przypadku powodzenia, _findfirst zwraca uchwyt wyszukiwania unikatowy, identyfikujący plik lub grupę plików, które odpowiadają filespec specyfikacji, które mogą być używane w kolejne wywołania _findnext lub _findclose.W przeciwnym razie _findfirst zwraca –1 i ustawia errno do jednego z następujących wartości.

  • EINVAL
    Invalid parameter: filespec or fileinfo was NULL.Lub system operacyjny zwrócił nieoczekiwany błąd.

  • ENOENT
    Specyfikacja pliku, którego nie można dopasować.

  • ENOMEM
    Za mało pamięci.

  • EINVAL
    Nieprawidłowy plik Nazwa specyfikacji lub nazwa pliku, biorąc pod uwagę był większy niż MAX_PATH.

Aby uzyskać więcej informacji na temat tych i innych kodów powrotu, zobacz _doserrno, errno, _sys_errlist i _sys_nerr.

Jeśli jest przekazany nieprawidłowy parametr, te funkcje wywołania obsługi nieprawidłowy parametr, zgodnie z opisem w Sprawdzanie poprawności parametru.

Uwagi

Musisz wywołać _findclose po zakończeniu albo _findfirst lub _findnext funkcji (lub warianty).Uwalnia to zasoby używane przez te funkcje w aplikacji.

Różnice te funkcje, które mają w prefiks są wersje szerokich znaków; w przeciwnym razie są one identyczne, odpowiadające im funkcje jednobajtowych.

Różnice te funkcje obsługi czasu 32-bitowy lub 64-bitowe typy i rozmiary pliku 32-bitowy lub 64-bitowych.Pierwszy sufiks numeryczny (32 lub 64) wskazuje rozmiar typu Godzina; drugi sufiks jest albo i32 lub i64oraz wskazuje, czy rozmiar pliku jest reprezentowane jako liczba całkowita 32-bitowa lub 64-bitowych.Aby uzyskać informacje o tym, które wersje obsługują czas 32-bitowych i 64-bitowe typy i rozmiary plików Zobacz następującą tabelę.i32 Lub i64 sufiks zostanie pominięty, jeśli jest taka sama, jak rozmiar typu Godzina tak _findfirst64 obsługuje również 64-bitowy plik długości i _findfirst32 obsługuje tylko 32-bitowy plik długości.

Funkcje te korzystają z różnych form _finddata_t struktury dla fileinfo parametru.Aby uzyskać więcej informacji na temat struktury, zobacz _find, _wfind funkcje.

Wariacje, używające typu czasu 64-bitowych włączyć daty utworzenia pliku wyrażone są do 23: 59: 59, 31 grudnia, 3000, UTC.Tych, które korzystają z czasu 32-bitowe typy reprezentują daty tylko za pośrednictwem 19: 14: 07 18 stycznia 2038, UTC.Północy, 1 stycznia 1970 r., jest dolną granicą zakres dat dla tych funkcji.

Chyba że istnieje szczególna przyczyna, aby użyć wersji, które jawnie określić wielkość czasu, należy użyć _findfirst lub _wfindfirst lub jeśli trzeba obsługiwać rozmiary plików większych niż 3 GB, użyj _findfirsti64 lub _wfindfirsti64.Tych funkcji należy użyć typu czasu 64-bitowych.We wcześniejszych wersjach tych funkcji używany typ czasu 32-bitowych.Jeśli jest to zmiana podziału dla aplikacji, można zdefiniować _USE_32BIT_TIME_T , aby powrócić do starego zachowania.Jeśli _USE_32BIT_TIME_T jest zdefiniowany, _findfirst, _finfirsti64, i odpowiadające im wersje Unicode wykorzystać czas 32-bitowych.

Typ czasu i zmian typu długość pliku _findfirst

Funkcje

_USE_32BIT_TIME_Tdefinicja?

Typ czasu

Typ długość pliku

_findfirst, _wfindfirst

Nie zdefiniowano

64-bitowe

32-bitowe

_findfirst, _wfindfirst

Definicja

32-bitowe

32-bitowe

_findfirst32, _wfindfirst32

Nie dotyczy definicji makra

32-bitowe

32-bitowe

_findfirst64, _wfindfirst64

Nie dotyczy definicji makra

64-bitowe

64-bitowe

_findfirsti64, _wfindfirsti64

Nie zdefiniowano

64-bitowe

64-bitowe

_findfirsti64, _wfindfirsti64

Definicja

32-bitowe

64-bitowe

_findfirst32i64, _wfindfirst32i64

Nie dotyczy definicji makra

32-bitowe

64-bitowe

_findfirst64i32, _wfindfirst64i32

Nie dotyczy definicji makra

64-bitowe

32-bitowe

Tekst rodzajowy rutynowych mapowania

Procedura TCHAR.h

_UNICODE i _MBCS nie zdefiniowane

_MBCS, definicja

_UNICODE, definicja

_tfindfirst

_findfirst

_findfirst

_wfindfirst

_tfindfirst32

_findfirst32

_findfirst32

_wfindfirst32

_tfindfirst64

_findfirst64

_findfirst64

_wfindfirst64

_tfindfirsti64

_findfirsti64

_findfirsti64

_wfindfirsti64

_tfindfirst32i64

_findfirst32i64

_findfirst32i64

_wfindfirst32i64

_tfindfirst64i32

_findfirst64i32

_findfirst64i32

_wfindfirst64i32

Wymagania

Funkcja

Wymaganego nagłówka

_findfirst

<io.h>

_findfirst32

<io.h>

_findfirst64

<io.h>

_findfirsti64

<io.h>

_findfirst32i64

<io.h>

_findfirst64i32

<io.h>

_wfindfirst

<io.h> lub <wchar.h>

_wfindfirst32

<io.h> lub <wchar.h>

_wfindfirst64

<io.h> lub <wchar.h>

_wfindfirsti64

<io.h> lub <wchar.h>

_wfindfirst32i64

<io.h> lub <wchar.h>

_wfindfirst64i32

<io.h> lub <wchar.h>

Informacji dotyczących zgodności, zobacz zgodności we wprowadzeniu.

Odpowiednik w programie .NET Framework

System::IO::DirectoryInfo::GetFiles

Zobacz też

Informacje

Wywołania systemowe

_find, _wfind funkcje