C语言文件流操作函数大全
C语言中有许多用于文件操作的函数,可以实现对文件的读取、写入、移动等操作。下面是C语言中常用的文件流操作函数的详细介绍。
1. fopen函数:用于打开文件,并返回一个指向文件结构体的指针。它接受两个参数,第一个参数是文件名,第二个参数是打开方式(如"r"表示只读,"w"表示写入)。例:
FILE *fp;
fp = fopen("", "r");
2. fclose函数:用于关闭文件。接受一个参数,即要关闭的文件指针。例:
FILE *fp;
fp = fopen("", "r");
// do something
fclose(fp);
3. fread函数:用于从文件中读取数据。接受四个参数,分别是存储读取数据的内存地址、每个数据项的大小、读取数据项的个数、要读取的文件指针。例:
FILE *fp;
int arr[10];
fp = fopen("example.bin", "rb");
fread(arr, sizeof(int), 10, fp);
fclose(fp);
4. fwrite函数:用于向文件中写入数据。接受四个参数,分别是待写入数据的内存地址、每个数据项的大小、要写入的数据项个数、要写入的文件指针。例:
FILE *fp;
int arr[10];
fp = fopen("example.bin", "wb");
fwrite(arr, sizeof(int), 10, fp);
fclose(fp);
5. fseek函数:用于定位文件指针的位置。接受三个参数,分别是要移动的文件指针、偏移量、相对位置(如SEEK_SET表示从文件开头开始,SEEK_CUR表示从当前位置开始,SEEK_END表示从文件末尾开始)。例:
FILE *fp;
fp = fopen("", "r");
fseek(fp, 10, SEEK_SET);  // 将文件指针移动到文件开头的第10个字节处
fclose(fp);
6. ftell函数:用于获取文件指针的当前位置。接受一个文件指针参数,返回当前位置相对于文件开头的偏移量。例:
FILE *fp;
int pos;
fp = fopen("", "r");
pos = ftell(fp);  // 获取当前文件指针位置
fclose(fp);
7. fprintf函数:用于将格式化的数据写入文件。接受两个参数,一个是文件指针,另一个是格式化的字符串,字符串中可以使用占位符来表示不同类型的数据。例:
FILE *fp;
int num = 10;
fopen函数失败
fp = fopen("", "w");
fprintf(fp, "The number is: %d\n", num);
fclose(fp);
8. fscanf函数:用于从文件中读取格式化的数据。接受两个参数,一个是文件指针,另一个是格式化的字符串,字符串中可以使用占位符来表示不同类型的数据。例:
FILE *fp;
int num;
fp = fopen("", "r");
fscanf(fp, "The number is: %d\n", &num);
fclose(fp);
9. feof函数:用于判断文件指针是否指向文件末尾。接受一个文件指针参数,如果指针指向
文件末尾,则返回非零值,否则返回0。
FILE *fp;
int num;
fp = fopen("", "r");
while (!feof(fp))
fscanf(fp, "%d", &num);
printf("%d ", num);
}
fclose(fp);
10. rewind函数:用于将文件指针重新定位到文件开头。接受一个文件指针参数,将文件指针移动到文件开头位置。例:
FILE *fp;
fp = fopen("", "r");
rewind(fp);  // 将文件指针移动到文件开头
fclose(fp);
以上是C语言中常用的文件流操作函数,通过这些函数可以实现对文件的读取、写入、移动等操作。掌握了这些函数的用法,可以方便地进行文件操作,提高编程的效率。