c语言读取文件大小的函数 c语言读取文件大小的函数怎么写( 二 )


int fseek (FILE *filepointer,long offset, int whence)
作用就是将文件指针所指向的文件的读写位置指针移动到特定的位置,这里offset代表了要移动到距离,whence代表了移动到初始地点 。offset的值假如是正数就会往 whence右边移动,假如是负数就会往whence左边移动 。
fseek(fp, 8, SEEK_SET); //代表开头位置往右边移动8个字节 。
2、rewind()函数
将读写位置指针重置到文件开头 。void rewind(FILE *filepointer);
3、ftell()函数
这个函数可以用来获取文件内部指针(位置指针)距离文件开头的字节数 。
它的原型是c语言读取文件大小的函数:long int ftell ( FILE * fp );
【c语言读取文件大小的函数 c语言读取文件大小的函数怎么写】参考资料来源:百度百科-rewind
如何用C语言获取文件的大小/*解题思路: 以只读方式打开某一文件,然后将文件指针定位在文件结尾的位置,利用ftell函数返回指针的在文件中的相对位置即可 。
*/
#include "stdio.h"
main()
{ FILE *fp;/*定义文件指针*/
long cnt;/*定义变量cnt用来存储文件大小数据*/
fp=fopen("c:\\1.txt","r");/*此处请填写测试文件的地址,并以只读("r")方式打开文件*/
if( fp==NULL )/*如果打开的文件不存在,则退出*/
{ exit(0);
printf("文件打开失败!");
}
fseek(fp,0L,SEEK_END);/*利用fseek函数将指针定位在文件结尾的位置*/
cnt=ftell(fp);/*利用ftell函数返回指针相对于文件开头的位置,以字节计算*/
printf("文件所占的字节数为%ld个\n",cnt);/*进行输出*/
}
C语言 fstat函数问题这是文件常用函数?。美床榭次募峁怪嗟模戳讼麓胄吹拿簧段侍猓ㄒ槟憧聪峦肺募欠裢暾?也有可能是win7添加了所需头文件的环境变量,xp没做这一步骤,建议检查一下
怎样用C语言高效的读取一个70M 左右的txt文件并 , 如果用malloc函数的话怎么实现呢现成的程序,有英文详细解释
#include stdio.h
#include stdlib.h
int main () {
FILE * pFile;
long lSize;
char * buffer;
size_t result;
pFile = fopen ( "myfile.bin" , "rb" );
if (pFile==NULL) {fputs ("File error",stderr); exit (1);}
// obtain file size:获取文件大小
fseek (pFile , 0 , SEEK_END);//窍门 1
lSize = ftell (pFile);// 窍门 2
rewind (pFile);
// allocate memory to contain the whole file://动态分配
buffer = (char*) malloc (sizeof(char)*lSize);
if (buffer == NULL) {fputs ("Memory error",stderr); exit (2);}
// copy the file into the buffer:// 文件复制到 缓冲变量
result = fread (buffer,1,lSize,pFile);
if (result != lSize) {fputs ("Reading error",stderr); exit (3);}
/* the whole file is now loaded in the memory buffer. */// 整个文件在buffer 里
// terminate
fclose (pFile);// 关闭文件
free (buffer);// 释放
return 0;
}
c语言读取文件大小的函数的介绍就聊到这里吧,感谢你花时间阅读本站内容 , 更多关于c语言读取文件大小的函数怎么写、c语言读取文件大小的函数的信息别忘了在本站进行查找喔 。

推荐阅读