文件编程是指在程序中对文件进行读写、操作和管理等操作。使用文件编程函数可以方便地进行文件的读写操作,实现文件的打开、关闭、读取、写入、移动、删除等各种操作。下面介绍几个常用的文件编程函数及其用法。
fopen函数
fopen函数可以打开一个文件,并返回一个文件指针。它接受两个参数,第一个参数是文件名,第二个参数是文件打开方式,可以是"r"、"w"、"a"、"r "、"w "、"a "。
```c
FILE *fopen(const char *filename, const char *mode);
```
| 模式 | 描述 |
| | |
| "r" | 打开一个文本文件,读取文件 |
| "w" | 打开一个文本文件,写入文件。若文件存在,则清空文件并开始写入 |
| "a" | 打开一个文本文件,写入文件。若文件存在,则在文件末尾添加新数据 |
| "r " | 打开一个文本文件,允许读写文件 |
| "w " | 打开一个文本文件,写入文件。若文件存在,则清空文件并开始写入。允许读取文件 |
| "a " | 打开一个文本文件,写入文件。若文件存在,则在文件末尾添加新数据。允许读取文件 |
```c
include
int main()
{
FILE *fp;
// 打开文件
fp = fopen("test.txt", "w");
// 写入文件
fprintf(fp, "Hello World!");
// 关闭文件
fclose(fp);
return 0;
}
```
fread函数和fwrite函数
fread函数用于从文件中读取数据,它接受四个参数,第一个参数是要读取的数据存放的地址,第二个参数是每个数据项的大小,第三个参数是要读取的数据项的数量,第四个参数是文件指针。
```c
size_t fread(void *ptr, size_t size, size_t count, FILE *stream);
```
fwrite函数用于向文件中写入数据,它接受四个参数,第一个参数是要写入的数据存放的地址,第二个参数是每个数据项的大小,第三个参数是要写入的数据项的数量,第四个参数是文件指针。
```c
size_t fwrite(const void *ptr, size_t size, size_t count, FILE *stream);
```
```c
include
include
int main()
{
FILE *fp;
char buffer[100];
// 写入文件
fp = fopen("test.txt", "w");
fwrite("Hello World!", sizeof(char), 12, fp);
fclose(fp);
// 读取文件
fp = fopen("test.txt", "r");
fread(buffer, sizeof(char), 12, fp);
printf("%s\n", buffer);
fclose(fp);
return 0;
}
```
fseek函数
fseek函数用于移动文件指针的位置,它接受三个参数,第一个参数是文件指针,第二个参数是移动的位置偏移量,第三个参数是移动的起始点,可以是SEEK_SET、SEEK_CUR、SEEK_END。
```c
int fseek(FILE *stream, long int offset, int whence);
```
```c
include
include
int main()
{
FILE *fp;
char buffer[100];
// 写入文件
fp = fopen("test.txt", "w");
fwrite("Hello World!", sizeof(char), 12, fp);
fclose(fp);
// 读取文件
fp = fopen("test.txt", "r");
fseek(fp, 0, SEEK_SET);
fread(buffer, sizeof(char), 5, fp);
printf("%s\n", buffer);
fseek(fp, 6, SEEK_SET);
fread(buffer, sizeof(char), 6, fp);
printf("%s\n", buffer);
fclose(fp);
return 0;
}
```
版权声明:本文为 “联成科技技术有限公司” 原创文章,转载请附上原文出处链接及本声明;