今天用C读取一个4G的文件时,发生了问题。总结了一下如下:
当文件太长时,使用ftell函数将无法得到文件的长度。
可以通过函数__int64 _fstati64( int handle, struct _stat *buffer ); 来得到文件的长度。长度保存在结构体变量buffer的st_size成员中。<sys/stat.h> and <sys/types.h>
如果需要定位可以使用__int64 _lseeki64( int handle, __int64 offset, int origin );来进行定位。<io.h>