在C++中,可以使用fseek函数来移动文件指针,从而实现对大文件的处理。fseek函数的原型如下:
int fseek(FILE *stream, long int offset, int origin);其中,stream是指向文件的指针,offset是偏移量,origin是起始位置。origin可以取以下几种值:
SEEK_SET:从文件开头开始偏移SEEK_CUR:从当前位置开始偏移SEEK_END:从文件末尾开始偏移以下是一个示例代码,演示如何使用fseek函数处理大文件:
#include <iostream>#include <cstdio>int main() { FILE *file = fopen("large_file.txt", "r"); if (file == NULL) { std::cerr << "Error opening file" << std::endl; return 1; } fseek(file, 0, SEEK_END); // 移动文件指针到文件末尾 long size = ftell(file); // 获取文件大小 std::cout << "File size: " << size << " bytes" << std::endl; fclose(file); return 0;}以上代码首先打开一个名为large_file.txt的文件,并将文件指针移动到文件末尾,然后通过ftell函数获取文件大小并输出。这样就可以处理大文件了。


