获取文件信息函数:_stat, _stat64, _stati64, _wstat, _wstat64, _wstati64
2013-08-02 00:27
483 查看
这是微软的文件状态函数族的文档。
函数名:_stat, _stat64, _stati64, _wstat, _wstat64, _wstati64
功能:获取文件的信息
以下是各函数原型:
path路径Pointer to a string containing the path of existing file.指向一个已经存在的文件的指针buffer缓存Pointer to structure that stores results.指向文件信息存储的结构体
Each of these functions returns 0 if the file-status information is obtained. A return value of –1 indicates an error, in which case errno is set to ENOENT, indicating that the filename or path could not be found.
The date stamp on a file can be represented if it is later than midnight, January 1, 1970, and before 19:14:07 January 18, 2038, UTC unless you use _stat64 or _wstat64, in which case the date can be represented up till 23:59:59,
December 31, 3000, UTC.
The _stat function obtains information about the file or directory specified by path and stores it in the structure pointed to by buffer. _stat automatically handles multibyte-character string arguments as
appropriate, recognizing multibyte-character sequences according to the multibyte code page currently in use.
_wstat is a wide-character version of _stat; the path argument to _wstat is a wide-character string. _wstat and _stat behave identically except that _wstat does
not handle multibyte-character strings.
Generic-Text Routine Mappings
The _stat structure, defined in SYS\STAT.H, includes the following fields.
st_gidNumeric identifier of group that owns file (UNIX-specific) This field will always be zero on Windows NT systems. A redirected file is classified as a Windows NT file.st_atimeTime of last access of file. Valid on NTFS but not on FAT formatted disk drives. Gives the samest_ctimeTime of creation of file. Valid on NTFS but not on FAT formatted disk drives.st_devDrive number of the disk containing the file (same as st_rdev).st_inoNumber of the information node (the inode) for the file (UNIX-specific). On UNIX file systems, the inode describes the file date and time stamps, permissions, and content. When files are hard-linked to one another, they share the same inode. The
inode, and therefore st_ino, has no meaning in the FAT, HPFS, or NTFS file systems.st_modeBit mask for file-mode information. The _S_IFDIR bit is set if path specifies a directory; the _S_IFREG bit is set if path specifies an ordinary file or a device. User read/write bits are set according
to the file's permission mode; user execute bits are set according to the filename extension.st_mtimeTime of last modification of file.st_nlinkAlways 1 on non-NTFS file systems.st_rdevDrive number of the disk containing the file (same as st_dev).st_sizeSize of the file in bytes; a 64-bit integer for _stati64 and _wstati64st_uidNumeric identifier of user who owns file (UNIX-specific). This field will always be zero on Windows NT systems. A redirected file is classified as a Windows NT file.
If path refers to a device, the st_size, various time fields, st_dev, and st_rdev fields in the _stat structure are meaningless. Because STAT.H uses the _dev_t type
that is defined in TYPES.H, you must include TYPES.H before STAT.H in your code.
For additional compatibility information, see Compatibility in the Introduction.如果想获取更多的信息,请参考compatibility
的介绍。
Libraries库
All versions of the C run-time libraries. C
run-time libraries的所有版本
函数名:_stat, _stat64, _stati64, _wstat, _wstat64, _wstati64
功能:获取文件的信息
以下是各函数原型:
int _stat( const char *path, struct _stat *buffer ); int _stat64( const char *path, struct __stat64 *buffer ); int _stati64( const char *path, struct _stati64 *buffer ); int _wstat( const wchar_t *path, struct _stat *buffer ); int _wstat64( const wchar_t *path, struct __stat64 *buffer ); int _wstati64( const wchar_t *path, struct _stati64 *buffer );
Parameters参数
path路径Pointer to a string containing the path of existing file.指向一个已经存在的文件的指针buffer缓存Pointer to structure that stores results.指向文件信息存储的结构体
Return Value返回值
Each of these functions returns 0 if the file-status information is obtained. A return value of –1 indicates an error, in which case errno is set to ENOENT, indicating that the filename or path could not be found.The date stamp on a file can be represented if it is later than midnight, January 1, 1970, and before 19:14:07 January 18, 2038, UTC unless you use _stat64 or _wstat64, in which case the date can be represented up till 23:59:59,
December 31, 3000, UTC.
Remarks备注
The _stat function obtains information about the file or directory specified by path and stores it in the structure pointed to by buffer. _stat automatically handles multibyte-character string arguments asappropriate, recognizing multibyte-character sequences according to the multibyte code page currently in use.
_wstat is a wide-character version of _stat; the path argument to _wstat is a wide-character string. _wstat and _stat behave identically except that _wstat does
not handle multibyte-character strings.
Generic-Text Routine Mappings
TCHAR.H routine | _UNICODE & _MBCS not defined | _MBCS defined | _UNICODE defined |
---|---|---|---|
_tstat | _stat | _stat | _wstat |
_tstat64 | _stat64 | _stat64 | _wstat64 |
_tstati64 | _stati64 | _stati64 | _wstati64 |
st_gidNumeric identifier of group that owns file (UNIX-specific) This field will always be zero on Windows NT systems. A redirected file is classified as a Windows NT file.st_atimeTime of last access of file. Valid on NTFS but not on FAT formatted disk drives. Gives the samest_ctimeTime of creation of file. Valid on NTFS but not on FAT formatted disk drives.st_devDrive number of the disk containing the file (same as st_rdev).st_inoNumber of the information node (the inode) for the file (UNIX-specific). On UNIX file systems, the inode describes the file date and time stamps, permissions, and content. When files are hard-linked to one another, they share the same inode. The
inode, and therefore st_ino, has no meaning in the FAT, HPFS, or NTFS file systems.st_modeBit mask for file-mode information. The _S_IFDIR bit is set if path specifies a directory; the _S_IFREG bit is set if path specifies an ordinary file or a device. User read/write bits are set according
to the file's permission mode; user execute bits are set according to the filename extension.st_mtimeTime of last modification of file.st_nlinkAlways 1 on non-NTFS file systems.st_rdevDrive number of the disk containing the file (same as st_dev).st_sizeSize of the file in bytes; a 64-bit integer for _stati64 and _wstati64st_uidNumeric identifier of user who owns file (UNIX-specific). This field will always be zero on Windows NT systems. A redirected file is classified as a Windows NT file.
If path refers to a device, the st_size, various time fields, st_dev, and st_rdev fields in the _stat structure are meaningless. Because STAT.H uses the _dev_t type
that is defined in TYPES.H, you must include TYPES.H before STAT.H in your code.
Requirements说明
Routine | Required header | Optional headers | Compatibility |
---|---|---|---|
_stat | <sys/types.h> followed by <sys/stat.h> | <errno.h> | Win 98, Win Me, Win NT, Win 2000, Win XP |
_stat64 | <sys/types.h> followed by <sys/stat.h> | <errno.h> | Win 98, Win Me, Win NT, Win 2000, Win XP |
_stati64 | <sys/types.h> followed by <sys/stat.h> | <errno.h> | Win 98, Win Me, Win NT, Win 2000, Win XP |
_wstat | <sys/types.h> followed by <sys/stat.h> or <wchar.h> | <errno.h> | Win NT, Win 2000, Win XP |
_wstat64 | <sys/types.h> followed by <sys/stat.h> or <wchar.h> | <errno.h> | Win NT, Win 2000, Win XP |
_wstati64 | <sys/types.h> followed by <sys/stat.h> or <wchar.h> | <errno.h> | Win NT, Win 2000, Win XP |
的介绍。
Libraries库
All versions of the C run-time libraries. C
run-time libraries的所有版本
Example例子
// crt_stat.c /* This program uses the _stat64 function to * report information about the file named stat.c. */ #include <time.h> #include <sys/types.h> #include <sys/stat.h> #include <stdio.h> int main( void ) { struct __stat64 buf; int result; /* Get data associated with "crt_stat.c": */ result = _stat64( "crt_stat.c", &buf ); /* Check if statistics are valid: */ if( result != 0 ) perror( "Problem getting information" ); else { /* Output some of the statistics: */ printf( "File size : %ld\n", buf.st_size ); printf( "Drive : %c:\n", buf.st_dev + 'A' ); printf( "Time modified : %s", _ctime64( &buf.st_mtime ) ); } }
Sample Output输出
File size : 732 Drive : C: Time modified : Thu Feb 07 14:39:36 2002
相关文章推荐
- stat(linux),_stat, _wstat, _stati64, _wstati64 获取文件信息
- Linux stat函数讲解(获取文件详细信息)
- Linux stat函数讲解(获取文件详细信息)
- 【转】linux C++ 获取文件信息 stat函数详解
- Perl基本技三:斯德艾特——File::stat->stat()函数获取文件属性信息
- os 与 stat 在文件中获取相关的信息
- 获取文件信息(fstat、stat和lstat 区别)
- 获取文件的属性信息及其操作函数
- python版本、文件信息及时间获取函数实例
- C/C++ 下获取文件的信息,学习 _finddata_t 结构体用法 及相关函数用法的
- Linux 获取文件属性 函数 stat, fstat, lstat 以及 stat 结构体
- stat() -- 通过文件名获取文件的信息
- 获取文件的信息stat() lstat() fstat()
- ios助手开发系列(四):文件操作系列1 - 获取设备文件信息 AFCFileInfoOpen函数和AFCKeyValueRead函数
- 利用PDB文件获取未导出全局变量、函数等信息
- python中怎样获取文件的修改时间及其他系统信息状态-os.stat()
- linux系统编程之文件与IO:stat()系统调用获取文件信息
- linux stat系统调用,获取文件信息。
- 获取文件属性信息之stat、fstat和lstat
- UNIX - stat、fstat和lstat函数,获取文件信息结构