在 Linux 中,您可以使用 C 语言的 fopen()
函数来打开和定位一个文件
stdio.h
。#include<stdio.h>
fopen()
函数打开文件。您需要提供文件名和所需的访问模式。例如,以只读模式打开文件:FILE *file = fopen("example.txt", "r");
fopen()
是否成功打开文件。如果打开失败,fopen()
将返回一个空指针(NULL)。if (file == NULL) {
printf("无法打开文件\n");
return 1;
}
fseek()
函数定位到文件的特定位置。fseek()
函数接受三个参数:文件指针、偏移量和定位方式。例如,将文件指针移动到文件开始位置后的第 10 个字节:int offset = 10;
int origin = SEEK_SET; // 从文件开始位置计算偏移
fseek(file, offset, origin);
现在,您可以从当前文件指针位置开始读取或写入文件。例如,使用 fread()
或 fwrite()
函数。
完成文件操作后,使用 fclose()
函数关闭文件。
fclose(file);
下面是一个完整的示例程序,该程序打开一个名为 example.txt
的文件,将文件指针定位到第 10 个字节,然后读取一个字符并将其打印到控制台:
#include<stdio.h>
int main() {
FILE *file = fopen("example.txt", "r");
if (file == NULL) {
printf("无法打开文件\n");
return 1;
}
int offset = 10;
int origin = SEEK_SET;
fseek(file, offset, origin);
char c = fgetc(file);
printf("文件第 10 个字节的字符是: %c\n", c);
fclose(file);
return 0;
}
编译并运行此程序,它将打开 example.txt
文件,将文件指针定位到第 10 个字节,并打印该位置的字符。