文件的读写
(1)字符变量=fgetc(文件指针)
功能:从指定文件读一个字符
(2)字符变量=fputc(字符量,文件指针)
功能:把字符写入指定文件
(3)fgets(字符数组名,n,文件指针)
功能:从指定的文件中读入一个字符串到字符数组中
(4)fputs(字符串,文件指针)
功能:向指定文件写入一个字符串
(5)格式化读写函数fscanf和fprintf
fscanf(文件指针,格式字符串,输入表列)
fprintf(文件指针,格式字符串,输出表列)
fscanf功能:从文件指针所指向的文件中按照格式字符串指定的格式,将输入的数据送到输入表列所指定的地址单元
fprintf功能:将输出表列中的变量值按照格式字符串指定的格式输出到文件指针所指向的文件中。
(6)数据块读写函数fread和fwrite
fread(buffer,size,count,fp)
fwrite(buffer,size,count,fp)
fread函数功能:对fp所指向的文件读count次,每次读取size大小的数据块,将读取的各数据块存到buffer指向的内存区
fwrite函数功能:对buffer所指向的内存区读取count次,每次读取size大小的数据块,将读取到的数据写入fp所指向的文件中
出错检测函数
feof(文件指针)
判断文件是否处于文件结束位置,如文件结束,则返回值为1,否则,返回值为0
ferror(文件指针)
检查文件在各种输入输出函数进行读写时是否出错。如ferror返回值为0,表示未出错,否则表示出错
clearerr(文件指针)
本函数用于清除出错标志和文件结束标志,使他们为0值。假设在调用一个输入输出函数时出现错误,ferror函数为一个非0值
FILE* p;
p = fopen("file.txt", "rt");
fclose(p);
编写程序,实现从键盘输入一些字符(以#结束),进行加密后(每个字符的ASCII码+5)写入新建的磁盘文件然后将磁盘信息还原到屏幕上
#include<stdio.h>
#pragma warning(disable:4996)
#include<stdlib.h>
int main()
{
FILE* fp;
char ch;
if ((fp = fopen("file.dat", "w")) == NULL)
{
printf("文件打开错误\n");
exit(0);
}
printf("请输入字符串,以#接受:");
while ((ch = getchar()) != '#')
{
fputc(ch + 5, fp);
}
fclose(fp);
if ((fp = fopen("file.dat", "r")) == NULL)
{
printf("文件打开错误\n");
exit(0);
}
while ((ch = fgetc(fp)) != EOF)
{
putchar(ch - 5);
}
fclose(fp);
return 0;
}