您的位置:首页 > 其它

fileno, stat, fstat以及struct stat结构体(获取文件详细信息)

2013-10-07 00:38 489 查看
     fileno函数用于获取文件描述符,假设当前目录有1.txt, 2.txt, 3.txt, 则:

#include <stdio.h>
int main( void )
{
FILE *fp1 = fopen("1.txt", "r");
FILE *fp2 = fopen("2.txt", "r");
FILE *fp3 = fopen("3.txt", "r");

printf("%d\n", fileno(fp1));
printf("%d\n", fileno(fp2));
printf("%d\n", fileno(fp3));

fclose(fp1);
fclose(fp2);
fclose(fp3);

return 0;
}

    结果为:

3

4

5

   

      下面看看stat函数:

#include <stdio.h>
#include <sys\stat.h>

int main()
{
struct stat fileStat;
stat("1.txt", &fileStat);

printf("%d\n", fileStat.st_size); // 7 <--- 1.txt文件中的字节数

return 0;
}


     下面看看fstat函数:

#include <stdio.h>
#include <time.h>
#include <sys\stat.h>

int main()
{
FILE *fp = fopen("1.txt", "r");
struct stat fileStat;
fstat(fileno(fp), &fileStat);

printf("%d\n", fileStat.st_size);
printf("%s", ctime(&fileStat.st_ctime)); // 有换行符

return 0;
}

    结果我就不说了,睡觉去。

     
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: