一、读写文件步骤
- 打开文件
- 读写文件
- 关闭文件
二、具体操作
1. 定义文件
FILE *fp;
/* 文件指针file pointer*/
2. 打开文件
FILE *fp fopen(const char *filename, const char *mode)
/* 文件指针file pointer,正常返回一个fp指针,失败返回NULL*/
参数:
- filename:文件名,如“demo.txt", “D:\\code\\demo.txt”
- mode:读写的模式。
名称 用法 w 只写,(文件不存在时创建文件,如果有文件则覆盖) r 只读,(文件不存在时报错) a 追加,文件不存在时报错 w+ 可读可写,(文件不存在创建文件) r+ 可读可写,(文件不存在时报错) a+ 可读可写,(文件不存在时报错) wb 二进制写,与w类似 rb 二进制读,与r类似 ab 二进制追加,与a类似 Note wb+,rb+,ab+都是二进制操作,可读可写
/* 下面是打开文件的一个例子*/
fp = fopen("demo.txt", "w"); /* 写的方式打开一个文件,如果没有回创建*/
if (fp == NULL)
{
printf("Error: Failure to open demo.txt\n");
exit(0);
}
/************************************************************/
/*下面的程序与上面功能一项,比较简洁。建议使用下面的程序*/
if ((fp = fopen("demo.txt", "w") == NULL))
{
printf("Error: Failure to open demo.txt\n");
exit(0);
}
3. 读写文件(4种方式分别介绍)
- 按 字符 读写:fputc,fgetc
- 按 字符串 读写:fputs,fgets
- 按 格式 读写:fscanf,fprintf
- 按 块 读写:fread,fwrite
3.1 按 字符 读写:fputc,fgetc
下面给出两个例子:
Example 1:
/*例子1:将一串字符写入demo.txt文件中,以换行符结束 */
#include <stdio.h>
#include <stdlib.h>
int main()
{
FILE *fp;
char ch;
if ((fp =