C读取文件大小的几种方式
2024-01-01 23:46:12
一 标准库 fseek 至尾部 读取ftell返回
#include <stdio.h>
int main(int argc, char** argv)
{
char* filename=argv[1];
FILE* fp = fopen(filename, "r");
long int size ;
fseek(fp, 0, SEEK_END);
size = ftell(fp);
printf("%s size is %ld\n",filename,size);
fclose(fp);
return 0;
}
二 stat读取文件信息
#include <stdio.h>
#include <sys/stat.h>
int main(int argc, char** argv)
{
char* filename=argv[1];
struct stat fstat;
stat(filename,&fstat);
printf("%s size is %ld\n",filename,fstat.st_size);
return 0;
}
三 lseek 和fseek差不多
#include <stdio.h>
#include <unistd.h>
#include <fcntl.h>
int main(int argc, char** argv)
{
char* filename=argv[1];
int fd = open(argv[1],O_RDONLY);
long int size = 0;
size = lseek(fd,0,SEEK_END);
printf("%s size is %ld\n",filename,size);
close(fd);
return 0;
}
文章来源:https://blog.csdn.net/yses000/article/details/135329153
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!