网站的盈利点,wordpress狮子歌歌,网站建设 模板中心,微信公众号的推广在文件IO的编程过程中#xff0c;经常会遇到如何求取文件长度的问题#xff0c;这里将工积累的一些常用方法写出来与大家分享。
第一类#xff1a;lseek/fseek
1、lseek
int GetFileSize#xff08;char *_pName)
{int iFd -1;int iLen 0;if (_pName NULL){return -…在文件IO的编程过程中经常会遇到如何求取文件长度的问题这里将工积累的一些常用方法写出来与大家分享。
第一类lseek/fseek
1、lseek
int GetFileSizechar *_pName)
{int iFd -1;int iLen 0;if (_pName NULL){return -1;}iFd open(_pName, O_RDONLY);if (iFd 0){iLen lseek(iFd, 0, SEEK_END); close(iFd);return iLen;}return iFd;
} 2、fseekftell:特别注意文件指针的位置
long GetFileSize(char *_pName)
{ long length;FILE *fpfp fopen(_pName ,rw);if (fp NULL)return -1;fseek(fp, 0L, SEEK_END); length ftell(fp)return length;
}第二类stat、fstat函数族
函数原型
int statchar *filenamestruct stat *sint fstatint fdstruct stat *s
代码片段以stat为例fstat只是第一个参数用文件描述符。
#include unstd.h#include sys/stat.hint GetFileLen(char *_pName){struct stat st;stat(_pName, st);return st.st_size;
}