_stat, _wstat, _stati64, _wstati64

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

The _stat structure, defined in SYS\STAT.H, includes the following fields.

st_gid

Numeric identifier of group that owns file (UNIX-specific) This field will always be zero on NT systems. A redirected file is classified as an NT file.

st_atime

Time of last access of file.

st_ctime

Time of creation of file.

st_dev

Drive number of the disk containing the file (same as st_rdev).

st_ino

Number 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_mode

Bit 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_mtime

Time of last modification of file.

st_nlink

Always 1 on non-NTFS file systems.

st_rdev

Drive number of the disk containing the file (same as st_dev).

st_size

Size of the file in bytes; a 64-bit integer for _stati64 and _wstati64

st_uid

Numeric identifier of user who owns file (UNIX-specific). This field will always be zero on NT systems. A redirected file is classified as an NT file.

If path refers to a device, the size, time, _dev, and _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.

Example

/* STAT.C: This program uses the _stat function to

* report information about the file named STAT.C.

*/

#include <time.h>

#include <sys/types.h>

#include <sys/stat.h>

#include <stdio.h>

void main( void )

{

struct _stat buf;

int result;

char buffer[] = "A line to output";

/* Get data associated with "stat.c": */

result = _stat( "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", ctime( &buf.st_atime ) );

}

}

Output

File size : 745

Drive : C:

Time modified : Tue May 03 00:00:00 1994

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航