基本介紹
- 中文名:WIN32_FIND_DATA
- 屬性信息:檔案的標題名、檔案的屬性
- 數據結構:WIN32_FIND_DATA
- 通過:FindFirstFile
- 檔案屬性:Constants
頭檔案,基本信息,檔案屬性,信息獲取,
頭檔案
#include <windows.h>
基本信息
關於檔案的全部屬性信息。總計有以下以下9種:檔案的標題名、檔案的屬性(唯讀、存檔,隱藏等)、檔案的創建時間、檔案的最後訪問時間、檔案的最後修改時間、檔案大小的高位雙字、檔案大小的低位雙字、保留、保留。在這裡只有檔案標題名和檔案的長度可以通過CFile類比較方便的獲得,而對於其他幾種屬性的獲取和設定就無能為力了。
該結構的內容如下:
typedef struct _WIN32_FIND_DATA {
DWORD dwFileAttributes; //檔案屬性
FILETIME ftCreationTime; // 檔案創建時間
FILETIME ftLastAccessTime; // 檔案最後一次訪問時間
FILETIME ftLastWriteTime; // 檔案最後一次修改時間
DWORD nFileSizeHigh; // 檔案長度高32位
DWORD nFileSizeLow; // 檔案長度低32位
DWORD dwReserved0; // 系統保留
DWORD dwReserved1; // 系統保留
TCHAR cFileName[ MAX_PATH ]; // 長檔案名稱
TCHAR cAlternateFileName[ 14 ]; // 8.3格式檔案名稱
} WIN32_FIND_DATA, *PWIN32_FIND_DATA;
可以通過FindFirstFile()函式根據當前的檔案存放路徑查找該檔案來把待操作檔案的相關屬性讀取到WIN32_FIND_DATA結構中去:
WIN32_FIND_DATA ffd ;
HANDLE hFind = FindFirstFile("c:\\test.dat",&ffd);
在使用這個結構時不能手工修改這個結構中的任何數據,結構對於開發人員來說只能作為一個唯讀數據,其所有的成員變數都會由系統完成填寫。在MSDN幫助中可以查找到關於WIN32_FIND_DATA結構的更加詳細的說明。
檔案屬性
File Attribute Constants
File attributes are metadata values stored by the file system on disk and are used by the system and are available to developers via various file I/O APIs. For a list of related APIs and topics, see the See Also section.
Constant/value | Description |
---|---|
FILE_ATTRIBUTE_ARCHIVE 32 (0x20) | A file or directory that is an archive file or directory. Applications typically use this attribute to markfiles for backup or removal.存檔類 |
FILE_ATTRIBUTE_COMPRESSED 2048 (0x800) | A file or directory that is compressed. For a file, all of the data in the file is compressed. For a directory, compression is the default for newly created files and subdirectories. |
FILE_ATTRIBUTE_DEVICE 64 (0x40) | This value is reserved for system use.驅動類 |
FILE_ATTRIBUTE_DIRECTORY 16 (0x10) | The handle that identifies a directory.目錄類 |
FILE_ATTRIBUTE_ENCRYPTED 16384 (0x4000) | A file or directory that is encrypted. For a file, all data streams in the file are encrypted. For a directory, encryption is the default for newly created files and subdirectories. |
FILE_ATTRIBUTE_HIDDEN 2 (0x2) | The file or directory is hidden. It is not included in an ordinary directory listing.隱藏 |
FILE_ATTRIBUTE_INTEGRITY_STREAM 32768 (0x8000) | The directory or user data stream is configured with integrity (only supported on ReFS volumes). It is not included in an ordinary directory listing. The integrity setting persists with the file if it's renamed. If a file is copied the destination file will have integrity set if either the source file or destination directory have integrity set. Windows Server2008R2, Windows7, Windows Server2008, WindowsVista, Windows Server2003, and WindowsXP:This flag is not supported until Windows Server2012. |
FILE_ATTRIBUTE_NORMAL 128 (0x80) | A file that does not have other attributes set. This attribute is valid only when used alone.普通 |
FILE_ATTRIBUTE_NOT_CONTENT_INDEXED 8192 (0x2000) | The file or directory is not to be indexed by the content indexing service. |
FILE_ATTRIBUTE_NO_SCRUB_DATA 131072 (0x20000) | The user data stream not to be read by the background data integrity scanner (AKA scrubber). When set on a directory it only provides inheritance. This flag is only supported on Storage Spaces and ReFS volumes. It is not included in an ordinary directory listing. Windows Server2008R2, Windows7, Windows Server2008, WindowsVista, Windows Server2003, and WindowsXP:This flag is not supported until Windows8 and Windows Server2012. |
FILE_ATTRIBUTE_OFFLINE 4096 (0x1000) | The data of a file is not available immediately. This attribute indicates that the file data is physically moved to offline storage. This attribute is used by Remote Storage, which is the hierarchical storage management software. Applications should not arbitrarily change this attribute. |
FILE_ATTRIBUTE_READONLY 1 (0x1) | A file that is read-only. Applications can read the file, but cannot write to it or delete it. This attribute is not honored on directories. For more information, see You cannot view or change the Read-only or the System attributes of folders in Windows Server 2003, in Windows XP, in Windows Vista or in Windows 7. |
FILE_ATTRIBUTE_REPARSE_POINT 1024 (0x400) | A file or directory that has an associated reparse point, or a file that is a symbolic link. |
FILE_ATTRIBUTE_SPARSE_FILE 512 (0x200) | A file that is a sparse file. |
FILE_ATTRIBUTE_SYSTEM 4 (0x4) | A file or directory that the operating system uses a part of, or uses exclusively.系統檔案 |
FILE_ATTRIBUTE_TEMPORARY 256 (0x100) | A file that is being used for temporary storage. File systems avoid writing data back to mass storage ifsufficient cache memory is available, because typically, an application deletes a temporary file after the handleis closed. In that scenario, the system can entirely avoid writing the data. Otherwise, the data is written afterthe handle is closed.臨時檔案 |
FILE_ATTRIBUTE_VIRTUAL 65536 (0x10000) | This value is reserved for system use.虛擬檔案(系統專用) |