WIN32_FIND_DATAA 結構 (minwinbase.h)

包含 FindFirstFileFindFirstFileExFindNextFile 函式找到之檔案的相關資訊。

語法

typedef struct _WIN32_FIND_DATAA {
  DWORD    dwFileAttributes;
  FILETIME ftCreationTime;
  FILETIME ftLastAccessTime;
  FILETIME ftLastWriteTime;
  DWORD    nFileSizeHigh;
  DWORD    nFileSizeLow;
  DWORD    dwReserved0;
  DWORD    dwReserved1;
  CHAR     cFileName[MAX_PATH];
  CHAR     cAlternateFileName[14];
  DWORD    dwFileType; // Obsolete. Do not use.
  DWORD    dwCreatorType; // Obsolete. Do not use
  WORD     wFinderFlags; // Obsolete. Do not use
} WIN32_FIND_DATAA, *PWIN32_FIND_DATAA, *LPWIN32_FIND_DATAA;

成員

dwFileAttributes

檔案的檔案屬性。

如需可能的值及其描述,請參閱 檔案屬性常數

如果檔案的任何資料流程已經疏鬆,則會設定檔案上的 FILE_ATTRIBUTE_SPARSE_FILE 屬性。

ftCreationTime

FILETIME結構,指定建立檔案或目錄的時間。

如果基礎檔案系統不支援建立時間,則此成員為零。

ftLastAccessTime

FILETIME結構。

針對檔案,結構會指定上次讀取、寫入或執行可執行檔的檔案的時間。

針對目錄,結構會指定何時建立目錄。 如果基礎檔案系統不支援上次存取時間,則此成員為零。

在 FAT 檔案系統上,檔案和目錄的指定日期正確,但一天的時間一律設定為午夜。

ftLastWriteTime

FILETIME結構。

針對檔案,結構會指定上次寫入、截斷或覆寫檔案的時間,例如,使用 WriteFileSetEndOfFile 時。 檔案屬性或安全性描述項變更時,不會更新日期和時間。

針對目錄,結構會指定何時建立目錄。 如果基礎檔案系統不支援上次寫入時間,則此成員為零。

nFileSizeHigh

檔案大小的高序 DWORD 值,以位元組為單位。

除非檔案大小大於 MAXDWORD,否則此值為零。

檔案的大小等於 (nFileSizeHigh * (MAXDWORD+1) ) + nFileSizeLow

nFileSizeLow

檔案大小的低序 DWORD 值,以位元組為單位。

dwReserved0

如果 dwFileAttributes 成員包含 FILE_ATTRIBUTE_REPARSE_POINT 屬性,則此成員會指定重新分析點標籤。

否則,此值為未定義,不應使用。

如需詳細資訊,請參閱 重新分析點標記

IO_REPARSE_TAG_CSV (0x80000009)

IO_REPARSE_TAG_DEDUP (0x80000013)

IO_REPARSE_TAG_DFS (0x8000000A)

IO_REPARSE_TAG_DFSR (0x80000012)

IO_REPARSE_TAG_HSM (0xC0000004)

IO_REPARSE_TAG_HSM2 (0x80000006)

IO_REPARSE_TAG_MOUNT_POINT (0xA0000003)

IO_REPARSE_TAG_NFS (0x80000014)

IO_REPARSE_TAG_SIS (0x80000007)

IO_REPARSE_TAG_WIM (0x80000008)

dwReserved1

保留供未來使用。

cFileName[MAX_PATH]

檔案的名稱。

cAlternateFileName[14]

檔案的替代名稱。

此名稱是傳統 8.3 檔案名格式。

dwFileType

已過時。 請勿使用。

dwCreatorType

已過時。 請勿使用。

wFinderFlags

已過時。 請勿使用。

備註

如果檔案具有長檔名,則完整名稱會出現在 cFileName 成員中,而名稱的 8.3 格式截斷版本會出現在 cAlternateFileName 成員中。 否則, cAlternateFileName 是空的。 如果使用fInfoLevelId參數中的FindExInfoBasic值呼叫FindFirstFileEx 函式,cAlternateFileName成員一律會包含Null字串值。 對於 FindNextFile 函式的所有後續呼叫,這仍然成立。 作為擷取檔案名 8.3 格式版本的替代方法,您可以使用 GetShortPathName 函式。 如需檔案名的詳細資訊,請參閱 檔案名、路徑和命名空間

並非所有檔案系統都可以記錄建立和上次存取時間,而且並非所有檔案系統都以相同的方式記錄它們。 例如,在 FAT 檔案系統上,建立時間的解析度為 10 毫秒、寫入時間解析度為 2 秒,而存取時間的解析度為 1 天。 NTFS 檔案系統在上次存取後最多 1 小時會延遲檔案上次存取時間的更新。 如需詳細資訊,請參閱 檔案時間

注意

minwinbase.h 標頭會將WIN32_FIND_DATA定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程式碼,可能會導致編譯或執行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例

規格需求

   
最低支援的用戶端 Windows XP [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows Server 2003 [傳統型應用程式 |UWP 應用程式]
標頭 minwinbase.h (包含 Windows.h)

另請參閱

FILETIME

檔案屬性常數

檔案名、路徑和命名空間

檔案時間

FileTimeToLocalFileTime

FileTimeToSystemTime

FindFirstFile

FindFirstFileEx

FindNextFile

GetShortPathName