C语言关于文件的操作方法总结
文件操作是 C 语言中常用的功能之一。本文将综合介绍 C 语言操作文件的各种方法,包括打开文件、读取文件、写入文件、关闭文件,以及文件指针的使用。
打开文件
在 C 语言中,打开文件必须使用 fopen()
函数。这个函数有两个参数:文件名和打开模式。文件名是需要打开的文件名字符串,打开模式参数指定打开文件时的操作。
以下是一些常见的打开模式:
- "r":只读模式。打开文件,只能读取文件内容。
- "w":写模式。打开文件并将文件内容清空。
- "a":追加模式。打开文件并指针放置到文件末尾。
- "r+":读写模式。打开文件允许读写操作。
- "w+":读写模式。打开文件并将文件内容清空。
- "a+":追加读写模式。打开文件并指针放置到文件末尾,允许读写操作。
下面是一个打开文件的示例代码:
FILE *file;
file = fopen("example.txt", "r");
读取文件
C 语言中可以使用 fread()
函数或者 fgets()
函数来读取文件内容。
使用 fread() 函数
fread()
函数用于读取文件内容,并将内容存储到缓冲区中。该函数参数包括缓冲区指针、每个元素的大小、元素数量和文件句柄。
下面是一个使用 fread()
函数读取文件的示例代码:
FILE *file;
char buffer[100];
fread(buffer,sizeof(char),100,file);
printf("%s\n", buffer);
使用 fgets() 函数
fgets()
函数用于从文件中读取一行文本。该函数参数包括缓冲区指针、缓冲区大小和文件句柄。
以下是一个使用 fgets()
函数读取文件的示例代码:
FILE *file;
char buffer[100];
fgets(buffer, 100, file);
printf("%s\n", buffer);
写入文件
C 语言中可以使用 fwrite()
函数或者 fprintf()
函数来写入文件内容。
使用 fwrite() 函数
fwrite()
函数用于向文件中写入数据。该函数参数包括缓冲区指针、每个元素的大小、元素数量和文件句柄。
下面是一个使用 fwrite()
函数写入文件的示例代码:
FILE *file;
char buffer[] = "Hello, world!";
fwrite(buffer,sizeof(char),strlen(buffer),file);
使用 fprintf() 函数
fprintf()
函数用于向文件中写入格式化数据。该函数参数包括文件句柄和格式化字符串。
以下是一个使用 fprintf()
函数写入文件的示例代码:
FILE *file;
char name[] = "John";
int age = 25;
fprintf(file, "Name: %s, Age: %d", name, age);
文件指针
C 语言中使用文件指针(FILE *)来指向打开的文件。文件指针可以通过 fseek()
函数移动到文件的特定位置。
以下是一个使用 fseek()
函数移动文件指针的示例代码:
FILE *file;
fseek(file, 10, SEEK_SET); // 将指针移动到文件起始位置后的第 10 个字节
关闭文件
完成对文件的读写后,必须使用 fclose()
函数来关闭文件。
以下是一个使用 fclose()
函数关闭文件的示例代码:
FILE *file;
fclose(file);
示例说明
示例一:从文件中读取整个字符串
假设有一个 example.txt 文件,包含以下内容:
Hello, world!
下面是一个从文件中读取整个字符串并打印的示例代码:
#include <stdio.h>
#include <stdlib.h>
int main() {
FILE *file;
char buffer[100];
file = fopen("example.txt", "r");
if (file == NULL) {
printf("无法打开文件\n");
exit(1);
}
fread(buffer,sizeof(char),100,file);
printf("%s\n", buffer);
fclose(file);
return 0;
}
运行结果:
Hello, world!
示例二:向文件中写入格式化数据
下面是一个向文件中写入格式化数据的示例代码:
#include <stdio.h>
int main() {
FILE *file;
char name[] = "John";
int age = 25;
file = fopen("output.txt", "w");
if (file == NULL) {
printf("无法打开文件\n");
return 1;
}
fprintf(file, "Name: %s, Age: %d", name, age);
fclose(file);
return 0;
}
运行结果:
output.txt 文件内容为:Name: John, Age: 25
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C语言关于文件的操作方法总结 - Python技术站