1 #C语言中规定我们使用文件必须初始化一个文件指针
2 FILE* pfile = NULL;
3 #以a+追加的方式打开文件 返回值0为打开成功
4 int fp = fopen_s(&pfile, "D://C项目/file/1.txt", "a+"); 5 #关闭文件 close(pfile); pfile = NULL; //将指针指向空 防 mode 处理方式 文件不存在 文件存在 文件输入 文件输
r 读取 报错 打开 不能 可以
w 写入 创建 覆盖 可以 不能 a 追加 创建 追加 可以 不能 r+ 读取/写入 报错 打开 可以 可以 w+ 写入/读取 创建 覆盖 可以 可以 a+ 读取/追加 创建 追加 可以 可以
如果是二进制文件 在打开方式后面加上b即可:如 rb ab wb+ 文件读取成功会返回0 读取失败会返回相应的字符
文件的读写操作: fputc("字符",文件型指针变量) 对文件写入操作 每次都写入一个字符 fgetc(文件型指针变量) 对文件读出操作 每次读出一个字符 返回当前保存的字符 并使文件标识移动到下一位 文件结束返回值为文件结束表示EOF fputs("字符串",文件型指针变量) 对文件进行写入操作 每次写入一串字符串 \0不会被写入 fprintf(文件型指针变量,"格式控制","输入列表") 对文件进行写入操作 按照控制符格式进行写入!!注意 如果格式控制符为%d,%s,%c 一类型的话读出也要相应的类型 fscanf(文件型指针变量,"格式控制","输出列表") 如果是上面类型那么读出操作就是 fscanf(pfile,"%d,%s,%c",&a,b,c); fwrite(存放地址,大小,数据块个数,文件型指针变量) 成批数据写入文件!!!操作成功 返回值为实际写入数据的个数 例如:fwrite(&a,4,1,pfile) 如果操作成功返回值为1 fread(存放地址,大小,数据块个数,文件型指针变量) 常见的文件操作函数: feof() 检测指向文件的指针是否到达了文件的最末尾 如果到达最末尾会返回一个非0值 常用 bool bisEnd = !feof(pfile); fewind() 将指向文件的指针重新指向文件的开始位置 fewind(pfile); fseek() 将指向文件的指针重新指向另一个位置实现随机读写文件 fseek(文件型指针变量,偏移量,起始位置) fseek(pfile,0x123,SEEK_SET); 成功返回0 否则返回非0值 ftell() 用于测试指向文件指针的当前位置 ftell(文件型指针变量) int noffset = ftell(pFile); 返回的是一个常数当前指标的位置 否则返回-1L
关于返回值 成功 失败 EOF是定义在stdio中的常量
|
请发表评论