要实现文件的随机访问,可以通过以下步骤使用ftell函数:
以下是一个简单的示例代码:
#include <stdio.h>
int main() {
FILE *file = fopen("example.txt", "r+");
if (file == NULL) {
perror("Error opening file");
return 1;
}
// 获取当前文件指针位置
long position = ftell(file);
// 移动文件指针到第10个字节
fseek(file, 10, SEEK_SET);
// 再次获取文件指针位置确认已经移动到正确位置
position = ftell(file);
// 进行读取或写入操作
// 例如,读取下一个10个字节的内容
char buffer[11];
fread(buffer, 1, 10, file);
buffer[10] = '\0'; // 添加字符串结束符
printf("Read from position 10: %s\n", buffer);
// 关闭文件
fclose(file);
return 0;
}
在这个示例中,我们首先打开一个文件并获取了文件指针,然后使用ftell函数获取当前文件指针的位置。接下来,我们使用fseek函数将文件指针移动到第10个字节的位置,并再次使用ftell函数确认文件指针已经移动到了正确的位置。最后,我们读取了下一个10个字节的内容,并关闭了文件。这样就实现了文件的随机访问。