zoukankan      html  css  js  c++  java
  • struct stat 的用法

    //! 需要包含de头文件
    #include <sys/types.h>
    #include <sys/stat.h>
     
    int stat(const char *filename, struct stat *buf); //! prototype,原型
     
    struct stat
    {
        dev_t       st_dev;     /* ID of device containing file -文件所在设备的ID*/
        ino_t       st_ino;     /* inode number -inode节点号*/
        mode_t      st_mode;    /* protection -保护模式?*/
        nlink_t     st_nlink;   /* number of hard links -链向此文件的连接数(硬连接)*/
        uid_t       st_uid;     /* user ID of owner -user id*/
        gid_t       st_gid;     /* group ID of owner - group id*/
        dev_t       st_rdev;    /* device ID (if special file) -设备号,针对设备文件*/
        off_t       st_size;    /* total size, in bytes -文件大小,字节为单位*/
        blksize_t   st_blksize; /* blocksize for filesystem I/O -系统块的大小*/
        blkcnt_t    st_blocks;  /* number of blocks allocated -文件所占块数*/
        time_t      st_atime;   /* time of last access -最近存取时间*/
        time_t      st_mtime;   /* time of last modification -最近修改时间*/
        time_t      st_ctime;   /* time of last status change - */
    };
    #include <iostream>
    #include <ctime>
    #include <sys/types.h>
    #include <sys/stat.h>
     
    using namespace std;
     
    int
    main ()
    {
        struct stat buf;
        int result;
        result = stat ("./Makefile", &buf);
        if (result != 0)
          {
    	  perror ("Failed ^_^");
          }
        else
          {
    	  //! 文件的大小,字节为单位
    	  cout << "size of the file in bytes: " << buf.st_size << endl;
    	  //! 文件创建的时间
    	  cout << "time of creation of the file: " << ctime (&buf.st_ctime) <<
    	      endl;
    	  //! 最近一次修改的时间
    	  cout << "time of last modification of the file: " <<
    	      ctime (&buf.st_mtime) << endl;
    	  //! 最近一次访问的时间
    	  cout << "time of last access of the file: " << ctime (&buf.st_atime)
    	      << endl;
          }
        return 0;
    }
    $ ./test
    size of the file in bytes: 36
    time of creation of the file: Sun May 24 18:38:10 2009
    time of last modification of the file: Sun May 24 18:38:10 2009
    time of last access of the file: Sun May 24 18:38:13 2009
  • 相关阅读:
    (转)深入剖析Redis主从复制
    (转)OpenStack之服务端口号
    (转)Centos7上部署openstack ocata配置详解
    (转)DB2高可用性灾难恢复
    (转)OpenStack各服务所用端口号总结
    (转)OpenStack构架知识梳理
    (转)基于OpenStack构建企业私有云(1)实验环境准备
    (转)一张图学会Dockerfile
    mysql误删root用户或者忘记root密码解决方法
    create table like 和create table select 比较
  • 原文地址:https://www.cnblogs.com/robbychan/p/3786617.html
Copyright © 2011-2022 走看看